我想同时观看我的咖啡和咕噜文件。当我只观看咖啡文件时,没有问题,但是当我向文件中添加 Jade 观察器时,观察器仅编译一次,即使有更新,观察器也不会编译这些新更新。
非常感谢任何帮助:
这是当我的系统中只有咖啡观察者时:
每当咖啡文件有更新时进行编译:Gruntfile.coffee
module.exports = (grunt) ->
grunt.initConfig
pkg : grunt.file.readJSON "package.json"
coffee :
compile :
options : sourceMap: on
files :
['dist/client/js/main.js': 'client/app/scripts/app.coffee',
'server.js': 'server.coffee']
watch :
coffee :
options : atBegin: yes
files : [ 'client/scripts/*.coffee',
'client/scripts/controllers/*.coffee',
'server.coffee']
tasks : ['coffee', 'jade']
grunt.loadNpmTasks 'grunt-contrib-coffee'
grunt.loadNpmTasks 'grunt-contrib-watch'
grunt.registerTask 'default', ['watch']
问题是,为什么观察者在启动时才起作用,但现在就不再起作用了?
在启动时编译:Gruntfile.coffee
module.exports = (grunt) ->
grunt.initConfig
pkg : grunt.file.readJSON "package.json"
coffee :
compile :
options : sourceMap: on
files :
['dist/client/js/main.js': 'client/app/scripts/app.coffee',
'server.js': 'server.coffee']
jade:
compile:
options:
data:
debug: false
files:
['dist/client/index.html': ['client/app/views/index.jade'] ]
watch :
coffee :
options : atBegin: yes
files : [ 'client/scripts/*.coffee',
'client/scripts/controllers/*.coffee',
'server.coffee']
tasks : ['coffee', 'jade']
grunt.loadNpmTasks 'grunt-contrib-coffee'
grunt.loadNpmTasks 'grunt-contrib-jade'
grunt.loadNpmTasks 'grunt-contrib-watch'
grunt.registerTask 'default', ['watch']
这是我的控制台注销命令:grunt --verbose
Initializing
Command-line options: --verbose
Reading "Gruntfile.coffee" Gruntfile...OK
Registering Gruntfile tasks.
Reading package.json...OK
Parsing package.json...OK
Initializing config...OK
Registering "grunt-contrib-coffee" local Npm module tasks.
Reading /Users/neva/Documents/projects/sdn-monitor/node_modules/grunt-contrib-coffee/package.json...OK
Parsing /Users/neva/Documents/projects/sdn-monitor/node_modules/grunt-contrib-coffee/package.json...OK
Loading "coffee.js" tasks...OK
+ coffee
Registering "grunt-contrib-jade" local Npm module tasks.
Reading /Users/neva/Documents/projects/sdn-monitor/node_modules/grunt-contrib-jade/package.json...OK
Parsing /Users/neva/Documents/projects/sdn-monitor/node_modules/grunt-contrib-jade/package.json...OK
Loading "jade.js" tasks...OK
+ jade
Registering "grunt-contrib-watch" local Npm module tasks.
Reading /Users/neva/Documents/projects/sdn-monitor/node_modules/grunt-contrib-watch/package.json...OK
Parsing /Users/neva/Documents/projects/sdn-monitor/node_modules/grunt-contrib-watch/package.json...OK
Loading "watch.js" tasks...OK
+ watch
Loading "Gruntfile.coffee" tasks...OK
+ default
No tasks specified, running default tasks.
Running tasks: default
Running "default" task
Running "watch" task
Waiting...Verifying property watch exists in config...OK
Verifying property watch.coffee.files exists in config...OK
Watching server.coffee for changes.
Watching .git for changes.
Watching .idea for changes.
Watching bower_components for changes.
Watching client for changes.
Watching dist for changes.
Watching node_modules for changes.
Watching server for changes.
OK
Initializing
Command-line options: --verbose
Reading "Gruntfile.coffee" Gruntfile...OK
Registering Gruntfile tasks.
Reading package.json...OK
Parsing package.json...OK
Initializing config...OK
Registering "grunt-contrib-coffee" local Npm module tasks.
Reading /Users/neva/Documents/projects/sdn-monitor/node_modules/grunt-contrib-coffee/package.json...OK
Parsing /Users/neva/Documents/projects/sdn-monitor/node_modules/grunt-contrib-coffee/package.json...OK
Loading "coffee.js" tasks...OK
+ coffee
Registering "grunt-contrib-jade" local Npm module tasks.
Reading /Users/neva/Documents/projects/sdn-monitor/node_modules/grunt-contrib-jade/package.json...OK
Parsing /Users/neva/Documents/projects/sdn-monitor/node_modules/grunt-contrib-jade/package.json...OK
Loading "jade.js" tasks...OK
+ jade
Registering "grunt-contrib-watch" local Npm module tasks.
Reading /Users/neva/Documents/projects/sdn-monitor/node_modules/grunt-contrib-watch/package.json...OK
Parsing /Users/neva/Documents/projects/sdn-monitor/node_modules/grunt-contrib-watch/package.json...OK
Loading "watch.js" tasks...OK
+ watch
Loading "Gruntfile.coffee" tasks...OK
+ default
Running tasks: coffee, jade
Running "coffee" task
Running "coffee:compile" (coffee) task
Verifying property coffee.compile exists in config...OK
Files: client/app/scripts/app.coffee -> dist/client/js/main.js
Files: server.coffee -> server.js
Options: bare=false, join=false, sourceMap, separator="\n"
Reading client/app/scripts/app.coffee...OK
Writing dist/client/js/main.js...OK
File dist/client/js/main.js created.
Writing dist/client/js/main.js.map...OK
File dist/client/js/main.js.map created (source map).
Reading server.coffee...OK
Writing server.js...OK
File server.js created.
Writing ./server.js.map...OK
File ./server.js.map created (source map).
Running "jade" task
Running "jade:compile" (jade) task
Verifying property jade.compile exists in config...OK
Files: client/app/views/index.jade -> dist/client/index.html
Options: namespace="JST", separator="\n\n", amd=false, data={"debug":false}
Reading client/app/views/index.jade...OK
Writing dist/client/index.html...OK
File "dist/client/index.html" created.
Done, without errors.
Completed in 0.731s at Wed Jan 22 2014 16:50:44 GMT+0200 (EET) - Waiting...
最佳答案
您告诉watch
监视coffee和jade的变化,但只在files数组中包含coffee文件,我认为您需要添加要监视的jade
文件那里也有
watch :
coffee :
options : atBegin: yes
files : [ 'client/scripts/*.coffee',
'client/scripts/controllers/*.coffee',
'server.coffee', 'client/app/views/index.jade'] // add the jade file here
tasks : ['coffee', 'jade']
更新
watch:
coffee:
files: ["client/scripts/*.coffee", "client/scripts/controllers/*.coffee", "server.coffee", "client/app/views/index.jade"]
tasks: ["coffee"]
jade:
files: ["client/app/views/index.jade"]
tasks: ["jade"]
关于node.js - 边看咖啡边看 Jade 文件,同时完成繁琐的任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21286226/