关于 gulp 4

2019-07-05 21:12:30 +08:00
 Livid
最近在把一些以前在 gulp 3 上能跑的东西迁移到 gulp 4。

但是我觉得这个东西实在是有点烧脑,这里有同学用 gulp 4 写过东西么,能否分享一下你们的 GitHub 地址我去学习一下?
7572 次点击
所在节点    Node.js
10 条回复
duan602728596
2019-07-05 22:55:44 +08:00
gulp4 感觉比 gulp3 写起来更方便一些
FrankFang128
2019-07-05 23:19:41 +08:00
你用 gulp3 做什么任务,gulp4 好像就是增加了并行处理而已。
FEDT
2019-07-06 00:00:19 +08:00
站长更新后遇到了啥问题
ddiu8081
2019-07-06 01:26:57 +08:00
最近才开始接触的 gulp,感觉挺喜欢这个写法的。
不过因为才开始学,写的东西也才是 hello world 级别的...
[https://github.com/moegi-design/ghost-theme-Moegi/tree/next]( https://github.com/moegi-design/ghost-theme-Moegi/tree/next)
PeterD
2019-07-06 07:10:02 +08:00
没用 gulp4 写过复杂的脚本,只写过个简单的

https://github.com/PeterDing/chord/blob/master/gulpfile.js
meathill
2019-07-06 09:35:21 +08:00
实际上 Gulp 从 3.x 升级到 4 也升级了很长时间,期间有两次大的 API 变化。

## v4.0

延续了 3.x 时代的写法,只不过把 runSequnce 模块整合到 gulp 里,叫做 gulp.parallel 和 gulp.serial。并且:

1. 取消了 `gulp.task('task', ['task1', 'task2', ...])` 的写法,改为 `gulp.task('task', gulp.serial('task1', 'task2', ...))`;
2. 必须使用回调。

其它基本没变。参考: https://github.com/meathill/mui-reader/blob/master/miniprogram/gulpfile.babel.js

## v4.0.2

开始使用 CommonJS 风格的配置文件,方便复用。主要影响的是写法,我最近才改了一个仓库,供参考: https://github.com/roudanio/roudanio.github.io/blob/master/gulpfile.js
huiyifyj
2019-07-06 14:40:48 +08:00
其实变动大的也就并行吧,稍微改动 tasks 的顺序就 OK。
一开始看英文文档的 parallel 和 serial 确实有点懵,但是用着用着就习惯了。
Mutoo
2019-07-06 21:02:45 +08:00
gulp 的本质就是 object stream,而在这个 stream 中传递的是名为 vinyl 的虚拟文件对象。
此外配合 glob (文件通配符)和 gaze (跨平台的文件事件,实现 watch )让这个流动起来。
所以只要理解这几个东西,基本上就知道 gulp 是怎么动作的了。
至于 series, parallel 这些异步队列挺容易理解的。

node stream: https://nodejs.org/api/stream.html
vinyl: https://github.com/gulpjs/vinyl
node-glob: https://github.com/isaacs/node-glob
gaze: https://github.com/shama/gaze
vitovan
2019-07-07 12:51:24 +08:00
已经从入门到放弃到滚回去写 Makefile 了
Livid
2019-07-07 15:06:48 +08:00
@FrankFang128 第一次接触 gulp 就是因为这个:

https://code.visualstudio.com/docs/languages/css

不过刚刚发现这个页面上也针对 gulp 4 更新过了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/580451

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX