chokidar игнорировать все, кроме XML-файлов - PullRequest
0 голосов
/ 21 февраля 2019

Когда дело доходит до конфигурации Chokidar , я хочу настроить параметры.Я хотел бы игнорировать все, кроме XML-файлов.

{
    "path": "C:/... my path ...",
    "options": {
        "ignored": "everything except xml files",
        "persistent": true
    }
}

Возможное решение будет

Используйте Chokidar, чтобы найти конкретное расширение файла

но есть ли способ установить для атрибута ignored файла конфигурации JSON «игнорировать все, кроме XML-файлов» вместо установки его по коду?


Я пытался перейти на этот код

{
    "path": "C:/...",
    "options": {
        "ignored": "!**.xml",
        "persistent": true
    }
}




const chokidar = require('chokidar');
const { path, options } = require('../fileSystemWatcherConfiguration.json');

module.exports = eventEmitter => {
    const watcher = chokidar.watch(path, options);
}

, но событие watcher.on('add', func) запускается при каждом расширении файла.

1 Ответ

0 голосов
/ 21 февраля 2019

Обновление

Оказывается, это действительно очень просто.

const watcher = chokidar.watch(`${path}/**/*.xml`, options);

Старый ответ

Анализируя код пакета , мы можем увидетьчто chokidar использует внутреннее anymatch , чтобы решить, следует ли игнорировать файл.

Копающий ковш anymatch использует micromatch и в примерахиз micromatch мы можем увидеть , что мы можем использовать ! в начале, чтобы отрицать математику.

...