用grunt监视已删除的文件

时间:2016-04-07 19:55:56

标签: gruntjs delete-file grunt-contrib-watch

使用grunt-watch监视文件更改对于添加/更改操作非常有用,因为当它使用更改列表调用任务时,任务的files(或fileSrc)属性将包含添加/更改文件。

删除的文件不是这样。如果您查看已删除的文件并调用任务,则已删除的文件将不会显示在任务的filesSrc属性或files属性的规范化部分中。

除了手动规范化特定orig元素的files属性之外,还有办法强制删除的文件显示在fileSrcfiles的规范化部分}?如果不是,那么标准化orig的最佳方法是什么(我不想重新发明轮子)?

1 个答案:

答案 0 :(得分:2)

插件很可能是按照设计从文件数组中转储已删除的文件,然而插件会发出一个你可以监听的watch event

grunt.initConfig({
  watch: {
    scripts: {
      files: ['**'],
    },
  },
});
grunt.event.on('watch', function(action, filepath, target) {
  if (target === 'scripts' && action === 'deleted') {
    // your code goes here
  }
});

还有一些方法可以设置特定的监视任务,以便在观察者检测到删除时运行特定任务。这两种方法都列在plugin's documentation中。