我有一个 grunt watch 任务,其中包含多个子任务,用于观看 LESS、CoffeeScript 等。
watch:
jade:
files: ['<%= yeoman.app %>/*.jade']
tasks: ['jade']
less:
files: ['<%= yeoman.css %>/*.less']
tasks: ['less']
coffee:
files: ['<%= yeoman.scripts %>/*.coffee']
tasks: ['coffee']
edge:
files: ['<%= yeoman.comp %>/*']
tasks: ['edge']
livereload:
options:
livereload: true
files: [
'<%= yeoman.app %>/*.html'
'<%= yeoman.css %>/*.css'
'<%= yeoman.scripts %>/*.js'
]
我还编写了一个自定义任务,负责处理一组经常更新的第 3 方文件。任务更新第 3 方 javascript 和 html 文件中的多个路径,然后将它们重新分配到主项目中的适当位置。
问题是当这些文件中的每一个都被写入它们的目的地时,相关的 grunt 任务会运行,每个都会触发实时重新加载。因此,如果写入 4 个文件,则会发生 4 次单独的重新加载。
有没有办法配置监视任务以将所有实时重新加载事件合并到“结束”时的单个重新加载中?