我有一个gulp任务,它会生成一个jekyll子进程。它将我的Markdown编译成_site中的HTML文件。
我有另一个任务,它将此任务作为依赖项,并对生成的HTML进行一些后处理。但是,它触发得太早了——因为子进程似乎不会影响依赖管理。
如何确保html
始终在jekyll
之后运行——最好不使用:
jekyll.on('exit', function (code, signal) {
gulp.run('html');
});
任务:
gulp.task('jekyll', ['scripts', 'styles'], function () {
var spawn = require('child_process').spawn;
var jekyll = spawn('jekyll', ['build', '--config', 'app/markdown/_config.yml', '--trace'], {stdio: 'inherit'});
});
gulp.task('html', ['jekyll'] function () {
return gulp.src('_site/*.html')
.pipe($.useref.assets())
});