【发布时间】:2019-01-03 14:34:54
【问题描述】:
在我从事的项目中,我们正在将 JS 模块迁移到 TypeScript。我们必须支持 IE11,所以很多现代 JS 语法在我们的 JS 模块中是不允许的。目前我们有很多模块仍在 JS 中(尚未迁移),其中一些已迁移,所有新模块都是用 TS 编写的。 TS 模块被编译成 JS,然后在构建过程中,我们将针对 ES5 的编译结果与用 JS 编写的模块结合起来。有时有人在修复尚未迁移的模块中的某些内容时错误地使用了某些 ES6 语法,并且在 IE11 上执行代码时在运行时捕获错误。我想知道是否有任何工具可以分析代码是否正确的 ES5 语法,最好是可以配置一些功能,因为我们使用了一些 polyfill。
【问题讨论】:
-
如果您要迁移到 TypeScript 但不使用转译器,那它是如何工作的?
-
@Pointy 真相是我想知道同样的事情
-
没有转译器就不能使用打字稿
-
@Pointy 用 JS 编写的模块使用的语法对 IE 11 是正确的,TypeScript 模块使用目标 es5 编译,一个 TS 文件 -> 一个 JS 文件然后我们有一些我们自己的架构来收集所有模块并创建一个包
-
听起来你在保留一些JS文件(不是将它们转换成TS),那些JS文件需要检查。如果正确,请重新表述问题以明确这一点。
标签: javascript internet-explorer-11 ecmascript-5