Изучая, как использовать grunt, я пытаюсь сделать простой кофеер script watcher/compiler. Проблема в том, что если я расскажу о задаче watch для просмотра нескольких файлов, и один из них изменит, он передаст все файлы команде coffee. Это означает, что когда вы меняете 1 файл, он собирается перекомпилировать все файлы, соответствующие шаблону src. Вместо этого я хочу только перекомпилировать один измененный файл, соответствующий шаблону src.
Вот grunt.js:
module.exports = function(grunt) {
grunt.initConfig({
coffee: {
app: {
src: ['test/cases/controller/*.coffee'],
dest: 'tmp',
options: {
bare: true,
preserve_dirs: true
}
}
},
watch: {
files: ['<config:coffee.app.src>'],
tasks: ['coffee:app']
}
});
grunt.loadNpmTasks('grunt-coffee');
grunt.registerTask('default', 'coffee');
};
Это используется grunt-coffee, что в основном таково: https://gist.github.com/2373159.
Когда я запускаю grunt watch, и я сохраняю файл в test/cases/controller/*.coffee, он компилирует все соответствующие файлы (помещая их в tmp/*).
Как вы вместо этого компилируете измененный файл с помощью grunt?