2016-10-11 78 views
0
fs.watch('./tmp', {encoding: 'buffer'}, (eventType, filename) => { 
    if (filename) 
    console.log(filename); 
    // Prints: <Buffer ...> 
}); 

它是從node.js file system 's Class: fs.FSWatcher文檔拷貝混淆在node.js中fs.watch()回調函數

文檔描述EVENTTYPE類型並且它可以是'改變'「重命名」 所以我寫的代碼像波紋管

fs.watch('./public/dir',function('change','xx.txt'){ 
    console.log('file changed'); 
}); 

但我牛逼語法錯誤:意外的字符串

我不明白什麼是EVENTTYPE

PLZ形容它是什麼。

回答

1

偵聽器回調獲取兩個參數(eventType,filename)。 eventType是「重命名」或「更改」。

文件名是觸發事件的文件的名稱。從文檔。 https://nodejs.org/api/fs.html#fs_fs_watch_filename_options_listener

eventType,filename < - 它只是來自監聽器的回調變量。

要解決您的問題需要這樣做。

fs.watch('./public/dir',function(typeOfEvent, nameOfFile){ 
    console.log(typeOfEvent); 
    console.log(nameOfFile); 
}); 

希望這會有所幫助。