chokidar не распознанные файлы или изменения каталога за пределами CWD - PullRequest
0 голосов
/ 03 марта 2019

Я использую 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 = "./"; утилиты- works

Как вы можете видеть выше "fileordirpath" имеет значение CWD, поэтому chokidar обнаруживает все изменения и регистрирует их в консоли.

  • var fileordirpath = "D: \ my-library \ app \ ** \ result.txt";- НЕ работает

  • Если я установил "fileordirpath" в "D: ​​\ my-library \ app \ \ result.txt"** chokidar не обнаруживает никаких изменений, которые я делаю.

Мои вопросы:

  1. Как определить изменения файла или каталога вне CWD с помощью chokidar?Если возможно, приведите пример
  2. Nodejs. Отправьте событие (используя nodejs eventEmitter), когда новый файл создается в определенном физическом местоположении.
  3. Любой другой хороший пакет npm для обнаружения операций с каталогом или файлами, например, Добавить / удалить / изменить / переименовать

Если chokidar не позволяет задавать физические местоположения, такие как C: \ my \путь, D: \ мой \ путь для обнаружения изменений.Пожалуйста, предложите мне любой альтернативный подход для выполнения emit или callback, когда новый файл добавляется в определенное место.

...