5
我似乎無法讓ESLint僅使用grunt-contrib-watch在已更改的文件上運行。grunt-contrib-watch無法與eslint一起僅僅觀察已更改的文件集
我能用JSHint做到這一點。
任何幫助讓ESLint做同樣的將不勝感激。
我似乎無法讓ESLint僅使用grunt-contrib-watch在已更改的文件上運行。grunt-contrib-watch無法與eslint一起僅僅觀察已更改的文件集
我能用JSHint做到這一點。
任何幫助讓ESLint做同樣的將不勝感激。
我設法設置了這一天,所以我會發佈一個可能的解決方案。
無論您正在嘗試使用grunt.config
或<%= ... %>
模板動態地修改配置對象(共享的任務之間的數據),您的問題可能是watch
,默認情況下,spawns child processes爲觸發任務,使eslint在不同的環境中運行。
爲了解決這個問題,只需在配置watch
時使用spawn:false
選項標誌。
基本上,配置任務,例如:
watch: {
scripts: {
files: ['**/*.js'],
tasks: ['eslint'],
options: {
spawn: false, // !!!
},
},
},
eslint: {
target: '<%= changedFiles %>'
}
然後附加一個事件處理程序表事件,設置changedFiles
:
grunt.event.on('watch', function(action, filepath){
grunt.config('changedFiles', filepath);
}
您也可以在事件處理程序修改eslint.target
直接,但是擁有一個屬性可以承載更改後的文件,因此可用於任何可能使用它們的任務。