Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用readdirp筛选读取的文件_Javascript_Node.js_Npm - Fatal编程技术网

Javascript 使用readdirp筛选读取的文件

Javascript 使用readdirp筛选读取的文件,javascript,node.js,npm,Javascript,Node.js,Npm,我用它来读取嵌套目录中的文件 它还可以选择过滤文件 通过使用它,我添加了文件过滤器 readdirp('.', {fileFilter: '!image001.png', alwaysStat: true}) .on('data', (entry) => { const {path, stats: {size}} = entry; console.log(${JSON.stringify({path, size})}); }) 我的情况是,如果该文件image001.png呈

我用它来读取嵌套目录中的文件

它还可以选择过滤文件

通过使用它,我添加了文件过滤器

readdirp('.', {fileFilter: '!image001.png', alwaysStat: true}) 
 .on('data', (entry) => { const {path, stats: {size}} = entry; 
  console.log(${JSON.stringify({path, size})}); 
})
我的情况是,如果该文件image001.png呈现两个或多个不同的嵌套目录意味着我只能从一个位置跳过该文件意味着,如何从特定位置指定该特定文件

我尝试了下面的代码,但不起作用,我认为readdirp在内部仅与文件名进行比较,而不是使用picomatch的路径

readdirp('.', {fileFilter: '!D:fileuploader\NEW_TEST\image001.png', 
  alwaysStat: true}) .on('data', (entry) => { 
    const {path, stats: {size}} = entry; 
      console.log(`${JSON.stringify({path, size})}`); 
 })
有什么办法吗


注意:我在他们的github页面中也提出了这个问题,我在这里提出这个问题,因为有人可能会遇到这个问题,也可能会得到解决。

从您共享的代码中,我了解到您只需要从当前目录中跳过一个文件。在这种情况下,您可以设置一个条件来跳过该文件,而不是对其进行过滤。请检查以下代码

readdirp('.', { alwaysStat: true}).on('data', (entry) => {
    const {path, stats: {size}} = entry;
    if(path!="image001.png")
       console.log(JSON.stringify({path, size}));
});