【发布时间】:2019-02-06 21:24:36
【问题描述】:
Babel 7+ 的发布引入了TypeScript support。
但是使用 Babel 编译 TypeScript 而不是使用标准的 TypeScript 编译器 (tsc) 有什么好处呢?
【问题讨论】:
标签: javascript typescript ecmascript-6 babeljs tsc
Babel 7+ 的发布引入了TypeScript support。
但是使用 Babel 编译 TypeScript 而不是使用标准的 TypeScript 编译器 (tsc) 有什么好处呢?
【问题讨论】:
标签: javascript typescript ecmascript-6 babeljs tsc
如果你已经在使用 TypeScript,或者从头开始一个项目,那么根据TypeScript and Babel 7 announcement on Microsoft Blog,最好使用 TypeScript 编译器:
使用 TypeScript 编译器仍然是构建的首选方式 打字稿。而 Babel 可以接管编译/转译——做 比如擦除你的类型和重写最新的 ECMAScript 在较旧的运行时中工作的功能——它没有类型检查 内置,并且仍然需要使用 TypeScript 来完成。所以 即使 Babel 构建成功,您也可能需要签入 用于捕获类型错误的 TypeScript。出于这个原因,我们认为 tsc 和 编译器管道周围的工具仍将提供最集成的 并为大多数项目提供一致的经验。
这意味着 Babel 7+ 支持 TypeScript 的优势主要是针对那些已经在使用 Babel 并希望在不完全更改其构建系统的情况下编写 TypeScript 代码的人:
[...] 如果你已经在使用 Babel,或者对 Babel 感兴趣 生态系统,并且您想获得 TypeScript 的好处,例如 捕捉拼写错误、错误检查和编辑体验 可能已经在 Visual Studio 和 Visual Studio Code 中看到过,这是给你的!
有关 Babel 中 TypeScript 支持的更多信息(和说明)可以在 Babel 官方网站上找到:
https://babeljs.io/docs/en/next/babel-preset-typescript.html
https://babeljs.io/docs/en/next/babel-plugin-transform-typescript.html
【讨论】: