问题标签 [gulp-4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1205 浏览

javascript - Gulp 4 browserSync 与 Pug 和 Parceljs 任务并行并行

所以基本上我要做的是让浏览器在使用browserSync的文件发生变化时刷新,编译Pug模板,然后Parceljs进行捆绑。而Gulp就是要留意变化。

总体目标是静态网站/页面。

问题

如果包裹构建失败。browserSync 退出。手表停止。

操作系统:Windows 10

谢谢!!

Gulpfile.js 内容:

0 投票
1 回答
507 浏览

node.js - Gulp 4:正确退出

使用 执行我的build任务时gulp@next,它处理得很好,但它并没有以某种方式完全退出它。例如,它只是停留在[17:37:06] Finished 'build' after 2.22 s。然后我必须通过 ^C 终止它。

这给我带来了一个问题,因为我想通过 now.sh 部署我的应用程序,它巧妙地等待npm run build完成并在实际发布之前退出。

gulpfile.js你可以在这里查看我的。这是相当基本和简单的。我可能做错了什么吗?我知道我有一些时间来弄清楚这个“异步任务完成”的东西;它与此有关吗?

0 投票
1 回答
3030 浏览

javascript - Gulp 4 多个任务在同一个源和系列

我编辑我的 gulpfile 如下:

但是当我运行 gulp watch 它在 csscomb 之后停止。当我编辑一个 scss 文件时。它只会梳理它。

我可以异步运行 htmlcomb、jsmin 和 (cssbomb + cssmin)。但是我需要在 csscomb 之后运行 cssmin。

0 投票
0 回答
541 浏览

javascript - 使用 Gulp 检测多个源文件之间的更改

我遇到的最初问题是该任务运行了 x 次,因为其中存在的文件数量src.pages,我通过添加“就地更改”插件来修复这个问题,以比较源文件的最后修改日期。这意味着如果修改的日期没有改变,那么它就不会运行,或者如果它已经改变,那么它就会运行,但只是必要的次数。

因为插件只检查传递到流中的目录的文件,这意味着它不会检查里面的文件src.templates,这本质上是我的 .html 部分文件文件夹。我运行的解决方法是让单独的任务监视部分文件更改,但不运行任何比较功能,这意味着我仍然遇到任务运行多次的原始问题。

更新:这是我的 gulpfile 的精简版本,其中包含与我的问题相关的所有内容:

编辑澄清:我有一个任务监视页面和模板目录的更改,一旦完成,它就会运行该nunjucksPages功能。在 nunjucks 编译 HTML 后,浏览器同步将检测到这一点并注入 HTML(我的代码中的第二个监视任务)。

我目前的解决方法是复制两个 nunjucks 函数,并独立运行它们 - 具有缓存的页面功能(单次重新加载,问题已修复!),以及没有缓存的模板功能(每 X 数量的页面重新加载) .

相关问题和评论https ://github.com/carlosl/gulp-nunjucks-render/issues/47#issuecomment-240962074

0 投票
0 回答
521 浏览

git - 如何使用 npm 正确安装 gulp v4.0.0-alpha.3?

我尝试使用以下方法安装 gulp 版本 4 alpha 3:

sudo npm install gulpjs/gulp#v4.0.0-alpha.3 -g

并得到以下错误:

npm 错误!命令失败:/usr/bin/git clone --depth=1 -q -b 4.0 git://github.com/gulpjs/gulp.git /Users/admin/.npm/_cacache/tmp/git-clone-4a9cf932 npm 错误!/Users/admin/.npm/_cacache/tmp/git-clone-4a9cf932/.git:权限被拒绝

我已经清理了几次 npm 缓存,但仍然无法正常工作。

当我尝试 sudo npm install gulp@next -g 或 npm install -g 时,可以正确安装各自的版本。

gulp3.9、gulp4.0 和 gulp4.0 alpha 之间的安装先决条件有什么区别吗?

0 投票
1 回答
11 浏览

gulp - 从其他任务调用 Gulp clean 任务

当出于某种原因在我的 gulpfile 中使用任何其他任务时,正在调用 gulp.watch。有谁知道这个任务出了什么问题?

0 投票
1 回答
613 浏览

javascript - 如何让 Gulp 4 不多次运行单个任务?

我有两个任务。他们有一个共同的任务,应该在任务之前执行。

使用Gulp 3,我以这种方式实现它们:

当我运行任务时只运行 1 次gulp defaultcompile

Gulp 4中,我以这种方式实现它们:

当我运行任务时gulp defaultcompile它会运行 2 次,这是不可取的,因为已经完成了一项备用工作。如何使任务只运行 1 次,保持独立运行testminify任务的能力?

0 投票
1 回答
483 浏览

node.js - 具有不同基础的 gulp zip 目录

我正在使用 gulp 4。我有以下文件结构:

├── gulpfile.js ├── dir1 └── src ├── dir2

我想压缩dir1dir2一起在同一层,即不包括src目录。

我怎么能用 gulp 做到这一点?

我能想到的一种选择是必须执行不同的任务将它们复制到 tmp 目录,然后使用 base = tmp.zip 压缩它们。但我想找到更好的解决方案。

谢谢,

0 投票
1 回答
544 浏览

node.js - gulp.series 不序列化任务

我正在使用带有节点 8 的 gulp 4 和以下设置

这就是我在任务运行时看到的——它们都并行运行

[23:41:57] TASK1 src/ [23:41:57] TASK1 src/ [23:41:57] TASK1 src/ [23:41:57] TASK1 src/ [23:41:58] TASK3 src/ [23:41:59] TASK2 src/ [23:41:59] TASK2 src/ [23:41:59] TASK2 src/ [23:41:59] TASK1 src/ [23:41:59] TASK1 src/ [23:41:59] TASK3 src/ [23:41:59] TASK3 src/ [23:41:59] TASK1 src/ [23:41:59] TASK1 src/ [23:41:59] TASK1 src/ [23:42:00] TASK1 src/ [23:42:00] TASK3 src/ [23:42:00] TASK2 src/ [23:42:00] TASK2 src/ [23:42:00] TASK2 src/ [23:42:00] TASK2 src/ [23:42:00] TASK3 src/ [23:42:00] TASK3 src/ [23:42:00] TASK3 src/ [23:42:00] TASK1 src/

有人遇到过同样的问题吗?有解决办法吗?

谢谢,

0 投票
1 回答
1560 浏览

gulp - Gulp 4 browsersync does not refresh when changing .less file

Link to Github repo: https://github.com/Greatshock/Netcracker-Study-Course/blob/f9bfb413929feec51064a78abf1450845f867186

I have a file named base.less, where all the styles are @import-ed. When I run the gulpfile (npm run dev), everything is being built, the browser opens the page. However, when I'm changing the content of one of the imported stylesheet, browsersync just writes in the console File event [change] : dist/base.css and nothing happens (even base.css does not actually change). Note that if I change base.less directly by writing some style in it, everything works fine.

Here is my gulpfile.js. Can anyone see the mistake?