使用TypeScript将箭头函数编译为常规函数

时间:2017-09-29 08:32:24

标签: javascript typescript arrow-functions

这是一个简单的问题,但我还没有在任何地方找到答案:是否有一些转换将TypeScript编译箭头函数转换为纯JavaScript函数?

我在代码中经常使用它们,我不想重写所有内容。但我最近意识到,IE不支持它们。

我已经尝试将脚本版本切换到ES5,但之后我的代码将不再编译,因为我也使用“过滤器”,这似乎不是它的一部分。但是,我不知道,如果那样做的话首先要做。

2 个答案:

答案 0 :(得分:4)

如果您只想将箭头函数转换为常规函数并保留其余代码编译,则可以将target配置设置为es5lib属性为{{ 1}}:

es6

这将允许使用ES6功能的代码在定位ES5时进行编译。但您必须确保这些功能(如"compilerOptions": { "target": "es5", "lib": ["es6"], // .... } )在运行时可用。如果它们不可用,它将抛出运行时异常。

答案 1 :(得分:1)

箭头函数是ES6的一部分,但您应该能够使用Babel将代码转换为ES5。您应该可以使用babel-preset-typescript