Gulp watch在watch任务之前改变了回调触发
gulp watch changed callback fires before watch tasks
下面的代码用于监视文件更改。我希望首先运行"build-dev-mainjs"任务。接下来应该运行$.livereload.changed
。但事实恰恰相反。
// syncronous
gulp.task('build-dev-mainjs', ['jshint', 'clean'], function() {
console.log('inmaindevjs');
return gulp.src(['app/client/scripts/*.js',
'app/client/bower_components/**/*.js'])
.pipe(gulp.dest('public/assets/scripts'));
});
gulp.watch('app/client/scripts/**/*.js', ['build-dev-mainjs'])
.on('change', $.livereload.changed);
我想要这种行为的原因是,因为每次更改后,build-dev-mainjs任务运行,将文件复制到dist文件夹。服务器从dist文件夹中获取文件
安装gulp插件:run-sequence
下面是如何使用它的一个例子:
// This will run in this order:
// * build-clean
// * build-scripts and build-styles in parallel
// * build-html
// * Finally call the callback function
gulp.task('build', function(callback) {
runSequence('build-clean',
['build-scripts', 'build-styles'],
'build-html',
callback);
});
相关文章:
- AngularJS:我可以跳过函数参数回调吗
- 要求未定义JS回调参数
- MeteorJS:在带有回调的vzaar api上正确使用wrapAsync
- 自引用回调
- 测试Angular Service解决错误回调中的promise
- 如何将一个JavaScript函数回调为多个函数
- JavaScript回调函数
- 用于回调的javascript参数
- 将json回调数据转换为日期
- 承诺在非节点式回调上使用Bluebird
- 如何在回调函数中执行流
- 回调函数中传递参数的困难(Google Map API Markers)
- Soundcloud Javascript SDK 3.0-回调无法读取属性'connectCallback
- $watch回调每次在浏览器中触发,但在测试期间只触发一次
- AngularJS $scope.$watch Jasmine 测试中未定义的回调函数参数
- AngularJS $watch 不等待触发器发生,而是在回调函数中执行$scope
- 指令回调函数未从$watch内部启动
- Gulp watch在watch任务之前改变了回调触发
- 如何在angular指令中使用回调的watch表达式
- 在$watch回调中使用$scope有意义吗