即使我的案例中存在文件,如何解决未找到文件的 gulp 问题

问题描述 投票:0回答:1

我正在弄清楚 Gulp 是如何工作的,以下是一个示例任务,

function negativeGlobTest(){
    return src(["./src/**/*.js", "!./src/pop/*.js", "./src/pop/twopac.js"])
    .pipe(ugli())
    .pipe(rename({extname : ".min.js"}))
    .pipe(dest("./superOutput"))
}

这是我的“ls -lR src”的输出

src:
total 1
-rw-r--r-- 1 terminator 197121 395 Apr  5 14:31 index.js 
drwxr-xr-x 1 terminator 197121   0 Apr  5 18:43 pop/     

src/pop:
total 2
-rw-r--r-- 1 terminator 197121 133 Apr  5 18:30 mao.js   
drwxr-xr-x 1 terminator 197121   0 Apr  5 14:30 pom/     
-rw-r--r-- 1 terminator 197121 154 Apr  5 18:34 twopac.js

src/pop/pom:
total 1
-rw-r--r-- 1 terminator 197121 29 Apr  5 18:27 index.js 

运行任务时遇到错误

Error: File not found with singular glob: C:/my-github-repo/master/src/pop/twopac.js (if this was purposeful, use `allowEmpty` option)

显然文件存在,我在这里做错了什么?

我认为 glob 应该首先匹配

src
中的所有文件,排除 pop 中以 js 结尾的所有文件,然后允许 pop 中的
twopac.js

javascript node.js gulp
1个回答
0
投票

文件已从流中删除,如何将其恢复到同一个流中,您必须使用

src()
显式将其添加回来,如下所示

function negativeGlobTest(){
    return src(["./src/**/*.js", "!./src/pop/*.js"])
    .pipe(src("./src/pop/twopac.js"))
    .pipe(ugli())
    .pipe(rename({extname : ".min.js"}))
    .pipe(dest("./superOutput"))
}
© www.soinside.com 2019 - 2024. All rights reserved.