chokidar 忽略除 xml 个文件之外的所有内容

chokidar ignore everything except xml files

关于 Chokidar 配置,我想设置选项。我想忽略除 xml 个文件之外的所有内容。

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

一个可能的解决方案是

但是有没有办法将JSON配置文件的ignored属性设置为"ignore everything except .xml files"而不是通过代码设置呢?


我尝试使用此代码

{
    "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) 事件。

更新

事实证明其实很简单。

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

旧答案

通过分析 package code, we can see that chokidar uses internaly anymatch 来决定是否应该忽略该文件。

挖斗 anymatch uses micromatch and in examples of micromatch we can see 我们可以在开始时使用 ! 来否定数学。