Sim*_*lla 6 javascript node.js typescript babeljs typescript1.6
我正在使用带有--harmony标志下的节点的TypeScript(1.6),所以我想将es6模块语法转换为commonjs.
据我所知,我不能用TypeScript 1.6做到这一点.如果我将目标设置为es6,将模块设置为commonjs,则会出现TypeScript错误 -
在定位"ES6"或更高版本时,无法将模块编译为"commonjs","amd","system"或"umd".
为什么TypeScript不会编译为带有ES6目标的commonjs?我想很多人都想这样做,因为节点还不支持ES6模块.
我认为新的moduleResolution编译器选项可能会解决这个问题,但它似乎没有做任何事情.
目前,我不得不使用babel将模块语法转换为commonjs,但我想从我的构建中删除babel,以便我可以利用源映射.
有没有办法实现这个目标?注意:我不想转发到ES5.我希望我的JS在和声标志下作为ES6运行.谢谢!
TypeScript 团队将在下一个版本中添加对您所需内容的支持。您可以等待几周/几个月。或者,您可以使用 Polyfill 作为 ES6 模块加载器:
网上还有更多类似上述的库,只需检查哪一个可以为您完成工作,直到官方支持--module到来--target es6。
tsconfig.json
{
"compilerOptions": {
"target":"ES6",
"moduleResolution": "classic",
}
}
Run Code Online (Sandbox Code Playgroud)
import东西转译,因为
"moduleResolution": "classic"| 归档时间: |
|
| 查看次数: |
2358 次 |
| 最近记录: |