Angular2 demo使用Traceur和System.JS来实现ES6模块语法。自 Typescript 1.5现在包含了这个语法,还需要单独的 ES6 模块加载器吗?没有它的话有什么想法吗?
<head>
<title>Angular 2 Quickstart</title>
<script src="https://github.jspm.io/jmcriffey/<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="482a273f2d3a653c3a292b2d3d3a653a3d263c21252d0878667866707f" rel="noreferrer noopener nofollow">[email protected]</a>/traceur-runtime.js"></script>
<script src="https://jspm.io/<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="6c1f151f1809012c5c425d5a42061f" rel="noreferrer noopener nofollow">[email protected]</a>"></script>
<script src="https://code.angularjs.org/2.0.0-alpha.28/angular2.dev.js"></script>
</head>
<my-app></my-app>
<script>System.import('app');</script>
最佳答案
每当您将使用 ES6 模块的 ES6+ 代码转换为 ES5 时,您都必须决定适用于 ES5 的模块系统。可以是 CommonJS、AMD、SystemJS、UMD。
即使 TypeScript 将成为 ES6 的超集并实现 ES6 模块,一旦您转译代码,您就需要使用浏览器现在可以理解的模块系统。
不幸的是,没有规范定义如何模块的加载。所以,是的,您仍然需要使用 SystemJS 之类的东西来加载 ES5 中的模块。
关于angularjs - 由于 TypeScript 1.5 包含 ES6 模块,那么还需要 ES6 模块加载器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31905990/