咽表结束得太早了
gulp watch ends too soon
我遇到了和这家伙一样的问题。
我的终端看起来像:
$ gulp watch
[23:59:03] Using gulpfile gulpfile.js
[23:59:03] Starting 'watch'...
[23:59:03] Finished 'watch' after 8.68 ms
http://jsbin.com/poxoke/1/edit?js
为什么我不能让它监视文件更改?为什么结局这么快?
谢谢!
您可以尝试添加gulp-util
var util= require('gulp-util');
然后在sass任务中添加一行以报告控制台输出中的任何错误(如果是错误的话)。
gulp.task('sass', function () {
return gulp.src('assets/scss/*.scss')
.pipe(sourcemaps.init())
.pipe(sass({
includePaths: ['sass'].concat(bourbon),
outputStyle: 'compressed'
}))
.on('error', util.log)
.pipe(sourcemaps.write())
.pipe(gulp.dest('assets/css'));
});
如果gullow-sass抛出错误,这可能会被管道"消耗",但仍会导致整个流终止。因此,如果您添加行以显式捕获它们,然后将它们注销,您可以看到事实是否如此。
您的监视任务取决于"sass"任务,如果它失败,您的任务将结束。
gulp.task('watch', function(){
gulp.watch('assets/scss/*.scss', ['sass']);
});
我目前的规则是:
gulp.task('sass', function () {
var src = path.join('src', 'scss', '*.scss');
var dst = path.join('public', 'css');
var config = {
errLogToConsole: true,
outputStyle: 'compressed',
sourceComments: false
};
return gulp.src(src)
.pipe(sourcemaps.init())
.pipe(sass(config)).on('error', util.log)
.pipe(concat('style.css')).on('error', util.log)
.pipe(sourcemaps.write('.'))
.pipe(gulp.dest(dst));
});
这一切都很好
我的输出是:
[05:49:27] Using gulpfile F:'Projects'Upload'gulpfile.js
[05:49:27] Starting 'watch'...
[05:49:29] Finished 'watch' after 1.98 s
但是Gulp没有返回到命令行,光标仍然不停地闪烁,当我更新SASS文件时,代码再次运行,并对CSS 进行更新
相关文章:
- 加载侦听器上的函数触发得太早
- AngularJS popover未显示内容:渲染太早
- 函数启动太早
- 咽表结束得太早了
- Node js async.series无法使用Express应用程序--响应发生得太早
- $.当承诺解决得太早时
- 过渡开始得太早,而 css 样式尚未完全应用
- 对于 IE 中的 ajax 内容,加载触发时间太早
- Moment.js fromNow() 太早了几秒钟
- Js 数组长度增加得太早
- JavaScript 在命令运行太早时打开新窗口而不是选项卡
- Meteor FlowRouter触发器输入触发太早
- Javascript函数调用得太早
- 太早从数组中删除元素
- Android的onOrientationChange在朝向完成之前触发(太早了)
- 聚合物自定义元素观察者开火太早
- QlikView运行BodyOnLoadFunctionNames回调太早-为什么?
- Angular广播初始化得太早了
- Jquery事件处理程序-新处理程序触发太早
- gulp-watch和liverload,重载太早