簡體   English   中英

grunt-contrib-watch不支持eslint只能監視已更改的文件集

[英]grunt-contrib-watch does not work with eslint to watch only changed file sets

我似乎無法讓ESLint只使用grunt-contrib-watch在更改的文件上運行。

我能用JSHint做到這一點。

任何幫助讓ESLint做同樣的事情都將非常感激。

我設法在前幾天設置了這個,所以我會發布一個可能的解決方案。

無論您是否嘗試使用grunt.config<%= ... %>模板來動態修改配置對象(以在任務之間共享數據),您的問題可能是默認情況下watch 生成子進程對於觸發的任務,使eslint在不同的上下文中運行。

要解決這個問題, 只需在配置watch使用spawn:false選項標志。

基本上,配置您的任務:

watch: {
  scripts: {
    files: ['**/*.js'],
    tasks: ['eslint'],
    options: {
      spawn: false, // !!!
    },
  },
},
eslint: {
  target: '<%= changedFiles %>'
}

然后將事件處理程序附加到watch事件,設置changedFiles

grunt.event.on('watch', function(action, filepath){
  grunt.config('changedFiles', filepath);
}

您還可以直接在事件處理程序中修改eslint.target ,但具有攜帶已更改文件的屬性使其可用於可能使用它們的任意數量的任務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM