【发布时间】:2014-10-07 10:18:05
【问题描述】:
我在配置 Grunt 以查看我的项目文件、重建和更新托管在连接服务器中的页面时遇到问题。如果我运行任何构建任务,然后将 'watch' 作为组合任务的一部分运行,那么 'watch' 似乎会陷入循环,无休止地打印消息。
Running "watch" task
Waiting...
Warning: must provide pattern
如果我只是运行$ grunt watch,它会很高兴地监视我的源文件并根据需要编译/构建。
我认为相关的任务配置是这些:
watch: {
html: {
files: [ '<%= site.partials %>', '<%= site.layouts %>', '<%= site.pages %>' ],
tasks: [ 'html' ]
},
sass: {
files: [ '<%= site.src %>sass/*.scss' ],
tasks: [ 'styles' ]
}
},
// development server
connect: {
options: {
port: 8080,
livereload: 35729,
hostname: 'localhost',
},
dev: {
options: {
directory: 'build',
}
}
},
以及任务定义:
grunt.registerTask( 'build', [ 'styles', 'html', ] );
grunt.registerTask( 'default', [ 'build','connect:dev', 'watch' ] );
'styles' 和 'html' 任务运行 grunt-sass 和 assemble。如上所述,运行任何这些任务,甚至单独运行'watch' 都会产生预期的结果。这表明我的配置对象正确定义了site.partials、site.dest 等。只有当我运行任何任务然后'watch' 时才会出现问题,就像在默认任务中一样。
【问题讨论】:
-
我怀疑问题出在引用
site对象的模板中。但是,如果没有看到您的grunt.initConfig电话的那部分,我真的不能说。我知道这个问题现在已经很老了,但是您可以发布您的整个 Gruntfile,或者,如果您已经解决了问题,请发布您的答案?
标签: javascript gruntjs grunt-contrib-watch grunt-connect