Ts可以编译为指定版本的js,那么还需要babel么?

ts的配置文件中:

{
    compilerOptions:{
        target: 'es3',
        allowJs: true,
    }
}

如果我们将编译目标指定为es3,那么我们还需要babel来编译代码么?

阅读 3.8k
1 个回答

tsc 的 target 只转译语法,不集成 polyfill,你还是得要 babel。

比如把箭头函数转成普通 functionaysnc + await 变成 Promise.then,这是语法转译;但你运行环境里如果没有 Promise.prototype.finally,那没有就还是没有。

P.S. 这个参数默认值就是 ES3,不用你特意指定。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进