Grunt:grunt-hub并不是在看所有的项目
我已经安装了grunt-hub到我的工作区,看起来像这样
hub/ node_modules/ grunt/ grunt-hub/ Gruntfile.js package.json
在Gruntfile.js中我写了这个,
module.exports = function (grunt) { 'use strict'; grunt.initConfig({ pkg : grunt.file.readJSON( 'package.json' ), hub: { src: [ 'hub/*/Gruntfile.js' ], watch: { src: '<%= hub.src %>', tasks: ['watch'] } } }); grunt.loadNpmTasks('grunt-hub'); grunt.registerTask('default', []); }
我在hub目录下有四个文件,它们有自己的Gruntfiles。
hub/ project1/ ... Gruntfile.js ... project2/ ... Gruntfile.js ... project3/ ... Gruntfile.js ... project4/ ... Gruntfile.js ...
当我跑…
grunt hub
…它工作得很好, 它观察我所做的所有改变,并运行我命令他们运行的方式。
唯一的问题是在我被告知的命令提示符中…
>> C:\Grunt\hub\project1\Gruntfile.js: Running "watch" task Waiting... >> C:\Grunt\hub\project2\Gruntfile.js: Running "watch" task Waiting... >> C:\Grunt\hub\project3\Gruntfile.js: Running "watch" task Waiting...
…但是我不知道project4正在被监视。 当我修改与project4相关的文件时,什么都不会发生,而对于其他所有内容都是如此。
我该怎么做才能让它看到project4呢?
livereload对此有影响。 这里有一些选项:
-
将监视任务添加到您的中心任务configuration(grunt.config.hub.js)中的任务列表中:
watch: { options: { allowSelf: true }, src: hubSettings.src, tasks: ['watch'] },
要么:
- 将watch任务设置为默认运行
grunt hub
:grunt hub:target:watch
参考
-
grunt-hub问题#28:不支持grunt-contrib-watch选项livereload:true
-
Grunt的多模块JavaScript项目