2
使用grunt-watch監視文件更改對於添加/更改操作非常有用,因爲當它使用更改列表調用任務時,任務的files
(或fileSrc
)屬性將包含添加/更改文件。使用grunt觀察刪除的文件
與刪除的文件不同。如果您觀察已刪除的文件並調用任務,則刪除的文件將不會出現在任務的filesSrc
屬性或files
屬性的規範化部分中。
除了手動歸一特定files
元件的orig
屬性,有一種方法強制刪除的文件出現在fileSrc
或files
歸一化部分?如果沒有,那麼規範orig
(我不想重新發明輪子)的最佳方法是什麼?
是的,我已經使用了「按需編譯文件」中描述的技術。 'watch'事件的麻煩在於只能有一個全局'watch'監聽器,並且如果您有多個watch目標同時運行,則無法知道某個特定事件來自哪個目標。 – gzak
例如,如果您以jslint作爲例子,並假設您需要運行另一個執行非常像jslint(稱爲jslint2)但非單獨(但重疊)文件集的監視目標,那麼監視器監聽器將不會選擇,但要爲jslint和jslint2兩個集合的聯合中的任何文件更改運行(否則它可能會丟失其中一個目標中的某些文件)。但這意味着某些文件可能會被jslint化(或jslint2'ed),而這本來不應該是。 – gzak
改變你的條件來檢查目標:'if(target ==='jslint'&& action ==='deleted')' – theaccordance