1

wireep + ng-poly を使用して、angular toasty のメイン ファイルを作成しました。

"main": [
    "dist/angular-toasty.js",
    "dist/angular-toasty.css"
],

angular-toasty.css には、Base64 PNG があります。

url("data:font/ttf;base64,AAEAAAASAQAABAAgR0RF....")

デプロイ時にローカル パスを生成しないように、wiredep にこれらの URL を無視するように指示するにはどうすればよいですか?

file:///C:/.../bower_components/angular-toasty/dis…AAAAEACAABACwAAQAIAAEABACg
4

1 に答える 1

0

問題の原因は、ng-poly がリソースを構築する方法にあります。少し古いので、後でこれに出くわす可能性がある人のために、ここに修正を投稿します。

build.js ファイルの「bowerCopy」の下に、データを処理しない正規化手法があります: URL を適切に処理します。これは、この問題を処理するために使用したコードです。

      .pipe($.if(isProd, $.modifyCssUrls({
    modify: function (url, filePath) {
      if (url.indexOf('http') !== 0 && url.indexOf('data:') !== 0) {
        filePath = path.dirname(filePath) + path.sep;
        filePath = filePath.substring(filePath.indexOf(bowerDir) + bowerDir.length,
          filePath.length);
      } else if (url.indexOf('data:') === 0) {
        // If it's 0, just return it....
        return url;
      }
      url = path.normalize(filePath + url);
      url = url.replace(/[/\\]/g, '/');
      return url;
    }
  })))

「else if」ステートメントを追加しました。

于 2016-01-20T02:45:05.320 に答える