小编Gil*_*leg的帖子

如何有条件地编译(使用Grunt)只更改了包含模板的jade文件

使用grunt-contrib-watch建议仅在此处编译已更改文件的版本:https://github.com/gruntjs/grunt-contrib-watch#compiling-files-as-needed

var changedFiles = Object.create(null);

var onChange = grunt.util._.debounce(function() {
grunt.config('jshint.all.src', Object.keys(changedFiles));
   changedFiles = Object.create(null);
}, 200);

grunt.event.on('watch', function(action, filepath) {
   changedFiles[filepath] = action;
   onChange();
});
Run Code Online (Sandbox Code Playgroud)

这工作正常(再次我在这里写的变体:https://gist.github.com/pgilad/6897875)

问题include在Jade模板中使用时,意味着你要包含其他Jade模板以构建完整的html文件.

使用单数解决方案进行编译不起作用,因为如果.jade正在使用include current_working_jade.jade文件是嵌入式的- 包含文件将不会被重新编译.

除了jade从头开始编译所有文件之外,还有其他解决方法吗?每次有大约60个大型玉文件要编译时,这会导致问题.

我能想到的唯一可能的解决方案是在外部或使用目录映射jade模板依赖项,但我不知道有哪些工具/插件可以做到这一点......

javascript compilation gruntjs grunt-contrib-watch pug

8
推荐指数
1
解决办法
1441
查看次数