如何将TypeScript转换为ES6 ?
How do I transpile TypeScript to ES6?
基本上,我需要能够在我的IDE中编写TypeScript代码(这为开发带来了极大的便利),将其编译到ES6,然后应用babel.js
(因为所有浏览器都不支持大多数ES6)来获得最终的ES5脚本。
这可能吗?我怎样才能做到这一点呢?
是。
你可以把TypeScript编译器设置为ES6。
例如,将此添加到命令行参数中:
--target es6
是的,你可以。
通过添加--target es2015
,或通过添加target
到您的tsconfig.json
:
{
"compilerOptions": {
"target": "es2015"
}
}
支持的目标选项有:
- "胡"(默认)
- "ES5"
- "ES6"/"ES2015"
- "ES2016"
- "ES2017"
- "ESNext"
有很多更多的配置选项。你可以在这里探索它们:编译器选项
有些选项只允许在tsconfig.json
中使用,而不能通过命令行开关使用。
你可以使用typescript来编写纯ES6,然后转译到ES3或ES5。因为typescript是ES6加上好东西。
把它看作是使用Less来编写css,你可以在Less文件中编写纯css,它会编译得很好。
对于typescript 1.8语言规范:
TypeScript是JavaScript的语法糖。TypeScript语法是ECMAScript 2015语法的超集。每个JavaScript程序也是一个TypeScript程序。TypeScript语法包含了ECMAScript 2015的所有特性,包括类和模块,并提供了将这些特性转换成符合ECMAScript 3或5的代码的能力。
TypeScript或多或少是ES6,语法糖很少。我建议你写香草ES6而不是TypeScript,但另一方面,TypeScript工具值得你付出额外的努力来编写TypeScript并将其转换为ES6,让Babel来完成剩下的工作。
这里有一个更方便的选项,就像在注释中指出的那样,从TypeScript 1.5开始,你可以将其转换为ES6。
相关文章:
- 如何将es6导入转换为AMD需要
- 有没有办法将包含 es6 的字符串转换为 es5
- 使用 Babel 将 ES6 模块转换为 ES5 AMD 模块,无法按预期工作
- 如何将普通对象转换为ES6映射
- 为什么我需要的库没有从ES6转换到ES5
- 将 ES6 可迭代转换为数组
- React js getInitialState 在转换为 es6 后不起作用
- 将 jQuery 插件转换为 es6 模块
- 使用 babel 将 es6 转换为 es5,然后与 Browserify 捆绑
- ES6中的JavaScript作用域已转换
- 正在转换为ES6语法
- Array.prototype.values()未定义-使用Babel在NodeJS环境中转换ES6
- 将Singleton JS对象转换为使用ES6类
- 无法在JavaScript ES6中将对象强制转换为类
- 将封口转换为es6模块
- 将ReactClass转换为ReactComponent ES6
- 默认情况下,BabelJS不会't可转换ES6语法的匿名函数
- 将带有符号的ES6类转换为JSON
- Babel不会将ES6转换为浏览器可以理解的JavaScript
- 将 es6 转换为 es5