我使用Gulp将我的js文件注入index.html。我有以下js资源结构:
js
|-ace-builds
|-src
|-ace.js
|-ext-beautify.js
|-ext-chromevox.js
|-ext-elastic_tabstops_lite.js
|-...
|-angular
|-angular.js
|-angular-ui-ace
|-ui-ace.js
|-...
问题在于,从整个 ace-builds 文件夹中我只需要注入一个文件 ace.js 。当然,可能的解决方案之一是手动列出所有注入的文件,但我想使注射器定义非常紧凑和灵活。
问题:是否可以通过gulp进行此类文件注入,在文件夹中加入其他文件,如果是,如何?
我尝试了以下代码,同时将行(1)和(2)按相反顺序放置,但它没有工作,不包括ace.js。
gulp.task('index', function () {
var target = gulp.src('./app/html/index.html');
var sources = gulp.src([
'app/js/*.js',
'!app/js/ace-builds/**/*', // (1)
'app/js/ace-builds/src-noconflict/ace.js' // (2)
], { read: false });
return target.pipe(inject(sources))
.pipe(gulp.dest('./app/html'));
});
答案 0 :(得分:0)
你的gulp.src中没有任何内容实际读取ace.js所在的文件夹。为什么不包括app / js / ** / ace.js?没有否定。顺便说一句,无论你把它列在哪里,否则总是会最后执行否定。这就是你永远不会拿起ace.js的原因。