簡體   English   中英

Chodikar手表僅工作一次

[英]Chodikar watch works only once

我對Node.js很陌生。 我想“觀看”一個包含一些參數的文件,以便在進行更改時能夠自動重新加載它。

我嘗試使用fs.watch,但返回的事件太多,所以我現在嘗試使用“ chokidar”

console.log('Server running');
var chokidar = require('chokidar');
var watcher = chokidar.watch('test.txt',{ persistent: true });
watcher.on("change", function(path) {
    var d = new Date();
    var n = d.toUTCString();
    console.log(n + " : start update");
    console.log(path + " was changed");
});

問題是它只工作一次! 當我修改文件“ test.txt”時,我第一次在控制台上看到消息,但之后再也沒有! 好像觀察者在第一個事件后被刪除了...

該服務器在Linux下運行,我今天安裝了chokidar

我做錯了什么?

我已經測試了您在linux上提交的代碼,並且可以正常工作。

我建議您按如下方式添加錯誤事件監聽器:

console.log('Server running'); 
var chokidar = require('chokidar'); 
var watcher = chokidar.watch('test.txt',{ persistent: true });     
watcher.on("change", function(path) {
var d = new Date();
    var n = d.toUTCString();
    console.log(n + " : start update");
    console.log(path + " was changed"); }); 
watcher.on('error', error => log(`Watcher error: ${error}`))

請注意,此模塊的linux和mac os並非所有測試都通過了:

在此處輸入圖片說明

暫無
暫無

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

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