我写了一个基本的gulp angular embed模板任务,用模板URL将所有指令转换为模板。如果我在指令模板URL中使用相对路径,那么我可以看到正确执行此任务的转换。但是当我添加绝对路径时,我的指令html' s,然后这个任务不会附加html模板。任务完成后我仍然看到模板URL。
在文档base path for angular embed template中,我看到此任务提供了一个基本路径,它将使用基础浴转换所有模板网址。
这就是我的尝试:
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']);
答案 0 :(得分:1)
.pipe(embedTemplates({'basePath':'./'}))
为我工作:)从dul运行gulp的相对路径。
文档可能会更好,留下选项。 out会使这更清楚。