chokidar无法识别CWD以外的文件或目录更改

时间:2019-03-03 09:24:16

标签: node.js chokidar

当目录中添加了特定文件时,我正在使用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);})
  • var fileordirpath =“ ./ utilites”; -有效

如上所示,“ fileordirpath” 设置为CWD,因此chokidar会检测所有更改并将其记录在控制台中。

  • var fileordirpath =“ D:\ my-library \ app \ ** \ result.txt”; -不起作用

  • 如果我将“ fileordirpath” 设置为“ D:\ my-library \ app \ \ result.txt” ** chokidar无法检测到任何我所做的更改。

我的问题:

  1. 如何使用chokidar检测CWD外部的文件或目录更改?如有可能,请提供示例
  2. Nodejs在特定物理位置创建新文件时,发出事件(使用nodejs eventEmitter)。
  3. 其他任何可以检测目录或文件操作(例如添加/删除/更改/重命名)的npm软件包

如果chokidar不允许设置物理位置(例如C:\ my \ path,D:\ my \ path)来检测更改。请向我建议将新文件添加到特定位置时执行发射或回调的其他方法。

0 个答案:

没有答案