当目录中添加了特定文件时,我正在使用chokidar来通知/发出nodejs中的事件以执行我的功能。
这里的问题是chokidar无法检测到CWD之外的文件或目录更改。
节点文件夹结构:
my_node_server
- services
*.js
- controller
*.js
- routes
routes.js
- utilities
-fileUtil.js
-stringUtil.js
-dateUtil.js
- server.js
下面是chokidar观察者
var chokidar = require('chokidar');
var fileordirpath="./utilites";
var watcher = chokidar.watch(fileordirpath, { ignored: /[\/\\]\./,
persistent: true,ignoreInitial:true });
watcher
.on('add', function(path) {console.log('File', path, 'has been added');})
.on('addDir', function(path) {console.log('Directory', path, 'has been
added');})
.on('unlink', function(path) {console.log('File', path, 'has been removed');})
.on('unlinkDir', function(path) {console.log('Directory', path, 'has been removed');})
.on('error', function(error) {console.error('Error happened', error);})
如上所示,“ fileordirpath” 设置为CWD,因此chokidar会检测所有更改并将其记录在控制台中。
var fileordirpath =“ D:\ my-library \ app \ ** \ result.txt”; -不起作用
如果我将“ fileordirpath” 设置为“ D:\ my-library \ app \ \ result.txt” ** chokidar无法检测到任何我所做的更改。
我的问题:
如果chokidar不允许设置物理位置(例如C:\ my \ path,D:\ my \ path)来检测更改。请向我建议将新文件添加到特定位置时执行发射或回调的其他方法。