2 つのタスクを設定しています。webpack タスクと注入タスク。
ウェブパック:
gulp.task('webpack', (done) => {
gulp.src('./src/app/app.module.js')
.pipe(plugins.webpack({
module: {
loaders: [
{ test: /\.html$/, loaders: ["html"]},
{ test: /\.js$/, exclude: /(node_modules|bower_components)/, loaders: ['babel-loader']}
]
}
}))
.pipe(gulp.dest('.tmp/scripts/'))
done();
})
注入:
gulp.task('inject', ['webpack'], () => {
var globalSources = gulp.src(['.tmp/scripts/*.js'], {read: false});
return gulp.src('src/index.html')
.pipe(plugins.plumber())
.pipe(plugins.inject(globalSources, {
addRootSlash: false,
addPrefix: '.',
ignorePath: '.tmp'
}))
.pipe(gulp.dest('.tmp/'));
})
ストリームされたファイルを .tmp/scripts フォルダーに配置する前に、webpack タスクが完了したと言うことがわかりました。したがって、注入が続くと、注入するファイルはありません。
Webpack-stream は、done() の前に使用されている独自のコールバックを出力していますか?