我刚刚开始使用grunt,只是尝试让一些基本任务正常工作。 这是我的Gruntfile:
module.exports = function(grunt) {
grunt.initConfig({
compass: {
dist: {
options: {
config: 'config.rb',
watch: true
}
}
},
livecopy: {
your_target: {
options: {
source: "C:/Websites/xxx/styles/screen.css",
target: "W:/Websites/xxx/styles/screen.css"
},
},
},
watch: {
assets: {
files: ['**//*.css', '**/*.js'],
options: {
livereload: true,
},
},
},
});
grunt.loadNpmTasks('grunt-contrib-compass');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-livecopy');
grunt.task.registerTask('default', ['compass','livecopy','watch']);
};
我可以单独运行这些任务,而不会出现任何问题。当我运行grunt默认任务时,只运行默认任务列表中的第一个任务。它们所处的顺序并不重要,只有第一个运行。
我错过了什么?
答案 0 :(得分:0)
使用watch选项运行Compass时,它运行compass watch
这是一项阻塞任务。来自grunt-contrib-compass docs:
观看
类型:布尔值
运行罗盘手表而不是指南针编译。这将使用Compass' native watch命令侦听Sass文件的更改并重新编译 你的CSS有关变化。虽然比运行指南针编译要快得多 每次你想编译你的Sass时,Compass就会变成一个阻塞 任务。这意味着如果您想与它一起使用它 另一个阻塞任务,如手表,你将需要使用它 与诸如grunt-concurrent之类的并行任务相结合。