2

$templateCache を埋めていくつかの単体テストを実行するために、ng-html2js を使用しようとしています。

問題は、テンプレートが別のプロジェクトにあり、それらへの相対パスを使用していることです。

 preprocessors: {
        '..//project2//Content//Templates/**/*.html': ['ng-html2js']
    },

キャッシュエントリは次のように保存されます。

"C:\Users\user\Documents\GitHub\solutiondir\project2\Content\Templates\"

質問:

全体を削除するために使用できる stripPrefix 値はありますか:

C:\Users\user\Documents\GitHub\solutiondir\project2\、それはユーザー名に関係なく機能しますか?

プリプロセッサのコードは次のようになっているため、基本的には、適切な正規表現を見つけ出すことができます。

    var log = logger.create('preprocessor.html2js');
  var moduleName = config.moduleName;
  var stripPrefix = new RegExp('^' + (config.stripPrefix || ''));
  var prependPrefix = config.prependPrefix || '';
  var stripSufix = new RegExp((config.stripSufix || '') + '$');
  var cacheIdFromPath = config && config.cacheIdFromPath || function(filepath) {
    return prependPrefix + filepath.replace(stripPrefix, '').replace(stripSufix, '');
  };
4

1 に答える 1

5

さて、ここで考え出した:

 ngHtml2JsPreprocessor: {
        // If your build process changes the path to your TEMPLATES,
        // use stripPrefix and prependPrefix to adjust it.
        stripPrefix: "(.*)project2",


    },
于 2015-04-15T15:28:58.197 に答える