由于TypeScript 1.5包含ES6模块,是否还需要ES6模块加载器?

时间:2015-08-09 15:44:44

标签: angularjs typescript

Angular2演示使用Traceur和System.JS来实现ES6模块语法。由于Typescript 1.5现在包含此语法,是否还需要单独的ES6模块加载器?没有它的任何想法?

<head>
  <title>Angular 2 Quickstart</title>
  <script src="https://github.jspm.io/jmcriffey/bower-traceur-runtime@0.0.87/traceur-runtime.js"></script>
  <script src="https://jspm.io/system@0.16.js"></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>

1 个答案:

答案 0 :(得分:2)

每当您将使用ES6模块的ES6 +代码转换为ES5时,您必须决定在ES5中运行的模块系统。这可以是CommonJS,AMD,SystemJS,UMD。

即使TypeScript将成为ES6的超集并实现ES6模块,只要您转换代码,就需要使用浏览器今天理解的模块系统。

不幸的是,没有规范定义 模块的加载方式了。所以,是的,您仍然需要使用像SystemJS这样的东西来加载ES5中的模块。