V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Livid
V2EX  ›  Node.js

关于 gulp 4

  •  
  •   Livid · 2019-07-05 21:12:30 +08:00 · 7406 次点击
    这是一个创建于 1729 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近在把一些以前在 gulp 3 上能跑的东西迁移到 gulp 4。

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

    https://github.com/PeterDing/chord/blob/master/gulpfile.js
    meathill
        6
    meathill  
       2019-07-06 09:35:21 +08:00   ❤️ 1
    实际上 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
        7
    huiyifyj  
       2019-07-06 14:40:48 +08:00 via Android   ❤️ 1
    其实变动大的也就并行吧,稍微改动 tasks 的顺序就 OK。
    一开始看英文文档的 parallel 和 serial 确实有点懵,但是用着用着就习惯了。
    Mutoo
        8
    Mutoo  
       2019-07-06 21:02:45 +08:00   ❤️ 5
    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
        9
    vitovan  
       2019-07-07 12:51:24 +08:00
    已经从入门到放弃到滚回去写 Makefile 了
    Livid
        10
    Livid  
    MOD
    OP
       2019-07-07 15:06:48 +08:00
    @FrankFang128 第一次接触 gulp 就是因为这个:

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

    不过刚刚发现这个页面上也针对 gulp 4 更新过了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2447 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 15:53 · PVG 23:53 · LAX 08:53 · JFK 11:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.