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

在 node 上使用 async await 应该编译成 es5 还是 es6?或者是别的方案?

  •  
  •   Warder · 2016-10-21 18:36:00 +08:00 · 5023 次点击
    这是一个创建于 2715 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近准备用 nodejs 做服务器才真正开始接触 node.js ,以前只是用用各种工具。
    想知道大家在项目中使用的时候是怎么做的。
    我正在使用 typescript , 2.0 目前只支持将 async 函数编译到 es6 ,因为它的实现需要依赖 generator 、 yield 这些 es6 特性, ts 目前也只能把这些语法编译到 es6 。
    即将发布的 typescrit2.1 将能够把 async await yield generator 这些编译到 es5 ,但这样在本身已经支持了 generator 的 node 版本上跑是不是性能会差些。
    13 条回复    2016-10-26 10:11:26 +08:00
    cheetah
        1
    cheetah  
       2016-10-21 18:47:55 +08:00
    看你运行环境的 node 版本了
    doubleflower
        2
    doubleflower  
       2016-10-21 18:50:41 +08:00
    你用 node6 不就行了
    whimsySun
        3
    whimsySun  
       2016-10-21 18:54:57 +08:00
    v4 版本的 async/await 编译过来性能不好,后面就没用了, v6 就不知道了
    xxxyyy
        4
    xxxyyy  
       2016-10-21 18:58:42 +08:00 via Android
    我只知道 babel 是可以配置的
    WildCat
        5
    WildCat  
       2016-10-21 19:02:17 +08:00 via iPhone
    node 7 这个月底能发布就好了吧
    Warder
        6
    Warder  
    OP
       2016-10-21 19:03:19 +08:00
    @doubleflower 额,对了,其实我应该问的问题是大家都用什么版本的 node 做服务器,现在主流的是什么版本?有兼容性问题么?
    viko16
        7
    viko16  
       2016-10-21 19:03:49 +08:00 via Android
    http://node.green
    可以看看这个
    Warder
        8
    Warder  
    OP
       2016-10-21 19:10:20 +08:00
    @xxxyyy 嗯, babel 应该是可以的,只要配置需要的 plugins 就行了
    FlowMEMO
        9
    FlowMEMO  
       2016-10-21 20:54:32 +08:00
    没历史包袱就上 node v6 吧,当前 LTS 版本.
    node 还比较年轻,社区追新的风气比较严重...
    现在的 LTS 的生命周短了点,估计过几年能好点吧
    https://github.com/nodejs/LTS
    FlowMEMO
        10
    FlowMEMO  
       2016-10-21 21:03:15 +08:00
    node7 就支持原生 async 了,不过玩玩就行,单数版本不会成为 LTS ,寿命太短了.
    Warder
        11
    Warder  
    OP
       2016-10-21 21:58:53 +08:00
    @FlowMEMO 嗯,不错的建议,已打算用 v6 。
    zhuangzhuang1988
        12
    zhuangzhuang1988  
       2016-10-22 20:01:58 +08:00
    spark
        13
    spark  
       2016-10-26 10:11:25 +08:00
    node 7 已经发布了啊...

    node --harmony_async_await app.js
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1668 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 16:46 · PVG 00:46 · LAX 09:46 · JFK 12:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.