【发布时间】:2015-05-16 03:24:26
【问题描述】:
我已经使用 Gulp 很多次了,但是这个问题让我很困惑。我有一个render 任务来保存通过gulp-swig 传输的HTML 模板。当通过gulp render 手动调用时,它工作得非常好,但在gulp.watch 触发任务时不会保存。因此,澄清一下,观察者确实触发了任务,但渲染的文件实际上并没有保存到它的目的地。
我已将问题归结为以下问题,从我的 gulpfile、砍掉的管道工、上下文数据等中删除了所有其他任务。感谢任何帮助!
var gulp = require( 'gulp' ),
browserSync = require( 'browser-sync' ).create(),
rename = require( 'gulp-rename' ),
swig = require( 'gulp-swig' ),
reload = browserSync.reload;
gulp.task( 'render', function() {
return gulp.src( './dev/template.html' )
.pipe( swig() )
.pipe( rename( 'index.html' ) )
.pipe( gulp.dest( './preview' ) )
.on( 'end', reload );
});
gulp.task( 'serve', function() {
browserSync.init( { server: './preview' } );
gulp.watch( './dev/*.html', [ 'render' ] );
});
gulp.task( 'default', [ 'serve' ] );
【问题讨论】:
-
我现在已经确认
swig()模块是罪魁祸首,但还没有解决方案..
标签: gulp gulp-watch swig-template