10 javascript node.js coffeescript gruntjs
我正在开发一个小节点项目,我使用coffeescript而不是客户端代码.我正在尝试使用grunt设置我的开发环境.我已经实现了运行服务器的自定义grunt任务,如下所示:
start = require './start' #just a function to start express.js application
grunt.registerTask 'server', 'Starting server', ->
grunt.log.write 'Preparing server to start'
done = do @async
start (err) ->
grunt.log.write "server running at localhost:4000"
Run Code Online (Sandbox Code Playgroud)
我还想使用grunt-contrib-watch插件运行"watch"任务:
grunt.initConfig
watch:
coffee:
files: ['public/coffee/**/*.coffee']
tasks: ['coffee']
jade:
files: ['public/jade/**/*.jade']
tasks: ['jade']
less:
files: ['public/less/**/*.less']
tasks: ['less']
Run Code Online (Sandbox Code Playgroud)
问题是:如何让这两个任务(手表和服务器)同时运行?我希望服务器启动并运行,并且不希望每次更改某些客户端代码时重新加载它.提前致谢
将它作为您的监视任务的前缀,并摆脱done = do @async服务器内部的任务.
tasks: ['server', 'coffee']
您希望在Grunt配置中指定一个选项,以使服务器任务"长时间运行".然后,@async只有在需要长时间运行时才能调用(没有监视任务).