2016-12-14 10 views
2

テンプレートのURLを持つすべてのディレクティブをテンプレートに変換するための基本的な角埋め埋め込みテンプレートタスクを作成しました。私のディレクティブテンプレートURLで相対パスを使用している場合、このタスクでの変換が適切に行われていることがわかります。しかし、絶対パスをディレクティブのhtmlに追加すると、このタスクはhtmlテンプレートを追加しません。タスクが完了した後でもテンプレートのURLが表示されています。gulpの角埋め込みテンプレートに基本パスを追加するには

ドキュメントでは、base path for angular embed templateこの作業では、ベースパスを使用して、すべてのテンプレートURLをベースバスに変換することがわかりました。

これは私が試したものです:

directive.js:

(function() { 
    'use strict'; 
    angular.module('testApp') 

     .directive('test', test); 

    function test() { 
     return { 
      restrict: 'E', 
      templateUrl: basePath+'templates/test.html' 
     } 
    } 
})(); 

gulpfile.js:

var gulp = require('gulp'); 
var embedTemplates = require('gulp-angular-embed-templates'); 

gulp.task('js:build', function() { 
    gulp.src('src/app/**/*.js') 
     .pipe(embedTemplates({ 
      options:{basePath:'/'} 
     })) 
     .pipe(gulp.dest('dist')); 
}); 

// The default task (called when you run `gulp` from cli) 
gulp.task('default', ['js:build']); 

答えて

1
.pipe(embedTemplates({'basePath':'./'})) 

が私のために働いた:)どこディレクトリからの相対パスをガルプが走った。

こちらの言語でお勧めするものがあります。これをより明確にするだろう。

関連する問題