AngularJS 2.0编译为ES6

前端之家收集整理的这篇文章主要介绍了AngularJS 2.0编译为ES6前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在关于 AngularJS 2.0 TypeScript Intellij idea (or webstorm) – ES6 import syntax的Stackoverflow答案之后,我可以在我的IntelliJ IDEA 14.1.4中使用 AngularJS 2.0 5 Minute Quickstart.

但是,这似乎是针对将TypeScript编译为EcmaScript 5.

我想看看我是否可以将AngularJS 2.0 Typescript编译成EcmaScript 6.

问题1:当我将TypeScript编译器更改为目标ES6时…

我开始收到TypeScript编译器错误

Error: TS1204: Cannot compile modules into 'commonjs','amd','system',or 'umd' 
when targeting 'ES6' or higher.

我可以通过删除–module“amd”TypeScript编译器选项来解决它.

这确实提出了一个问题:没有指定amd,ES6使用什么样的模块格式?

问题2:

修改TypeScript编译器选项后,它们显示如下:

我开始收到以下错误

Error TS2300: Duplicate identifier 'Promise'

有没有人见过这个?我怀疑它与AngularJS 2.0 Quickstart有关,它指定了ES-6 Promise并且它正在全局安装,但是无法弄清楚如何解决它.

非常感谢你提前.

without specifying amd,what sort of module format is ES6 using?

对于目标es6,应该允许系统. amd工作的事实实际上是一个bug.

Duplicate identifier ‘Promise’

目标es6 lib.d.ts更改为lib.es6.d.ts(this file),其中包含Promise的包含定义.

推荐修复:

>使用–nolib编译并包含lib.d.ts into your project

有关lib.d.ts http://basarat.gitbooks.io/typescript/content/docs/types/lib.d.ts.html的更多信息

猜你在找的Angularjs相关文章