我在使用Gruntfile时遇到了一些意外的问题。我注册了一个任务,看起来像这样:
我遇到的问题是当我运行
以下是我的Gruntfile内容。有谁能帮我理解发生了什么?
grunt.registerTask('dev', ['jekyll:server', 'watch:jekyll'])
希望它能顺序启动jekyll服务器,然后使用grunt-contrib-watch
插件监视我的项目特定文件的更改。一旦检测到这些更改,它将自动重新运行jekyll:server
。我遇到的问题是当我运行
grunt dev
时,它会启动Jekyll服务器,但不会运行watch
命令。但是,如果我从grunt dev
中删除服务器任务,则会按预期运行watch
命令。以下是我的Gruntfile内容。有谁能帮我理解发生了什么?
module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
jekyll: {
server : {
server: true,
server_port: 4000,
exclude: ['node_modules']
},
prod: {
dest: './_site-release'
}
},
watch: {
jekyll: {
files: ['_posts/**/*.md', '_layout/*.html', '_includes/*.html', 'index.html'],
tasks: ['jekyll:server']
}
}
});
grunt.loadNpmTasks('grunt-jekyll');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.registerTask('default', 'jekyll:server');
grunt.registerTask('dev', ['jekyll:server', 'watch:jekyll']);
grunt.registerTask('release', 'jekyll:prod');
};