我的设置有Gruntfile.js
,可以从单个文件加载任务,其中一个是all_sass.js
。我希望grunt watch
正在运行,对all_sass.js
进行更改,并且无需手动停止/启动grunt watch
即可查看这些更改。
正如我现在所知,终端告诉我,咕噜咕噜的手表可以"看到"当我改变all_sass.js
时:
OK
>> File "grunt/tasks/all_sass.js" changed.
但它实际上并没有重新加载任务或重新启动grunt watch。它继续以与最初观看的文件相同的行为运行。
Gruntfile.js:
module.exports = function (grunt) {
// load all grunt tasks
require('load-grunt-tasks')(grunt);
grunt.initConfig({
watch: {
configFiles: {
files: ['Gruntfile.js', 'grunt/tasks/*.js'],
options: {
reload: true
}
}
}
});
// Load all tasks from the grunt/tasks folder
grunt.loadTasks('grunt/tasks');
grunt.registerTask('default', ['allSass']);
};
咕噜/任务/ all_sass.js:
module.exports = function(grunt) {
var scssPath = 'dest/scss';
var cssPath = 'dest/css';
// Config
grunt.config.set('allSass', {
scssPath: scssPath,
cssPath: cssPath
});
// sass
grunt.config.set('sass.allSass', {
options: {
outputStyle: 'compressed'
},
files: [{
expand: true,
cwd: '<%= allSass.scssPath %>',
src: ['**/*.scss'],
dest: '<%= allSass.cssPath %>',
ext: '.css'
}]
});
// watch
grunt.config.set('watch.allSass', {
files: ['<%= allSass.scssPath %>/**/*.scss'],
tasks: ['allSass'],
options: {
spawn: false
}
});
grunt.registerTask('allSass', 'Compile sass', [
'sass:allSass'
]);
};
我有什么想法可以让它发挥作用吗?