使用不带 TypeScript 转译器的 Angular 2

Using Angular 2 without TypeScript Transpiler

本文关键字:Angular TypeScript      更新时间:2023-09-26

我想学习 Angular 2 并将我的应用程序切换到使用它,但是,我在使用 TypeScript 时遇到了问题。

在我目前的环境中,我无法使用转译器/编译器。我目前必须只运行节点.js可执行文件(node.exe),而不是整个节点.js应用程序,也不是 npm。Angular 2 是用 TypeScript 编写的,因此在发送到浏览器之前需要将其编译为 JavaScript。

有没有办法获得 Angular 2 的预编译版本,这样我就可以用 JavaScript 编写并在没有编译器的情况下运行?

如果没有,有没有办法手动安装和使用仅使用节点可执行文件的 TypeScript 编译器.exe?

需要明确的是,这不是因为我不想使用TypeScript,而是因为在我目前的情况下我无法安装它。

Angular2 在 TypeScript、JavaScript 和 Dart 中可用。无需使用 TypeScript。


- https://angular.io/docs/js/latest/index.html
- http://blog.thoughtram.io/angular/2015/05/09/writing-angular-2-code-in-es5.html
- http://blog.thoughtram.io/angular/2015/07/06/even-better-es5-code-for-angular-2.html

参见 是否可以将 ES5 JavaScript 与 Angular 2 一起使用,而不是 TypeScript?

<script src="https://code.angularjs.org/2.0.0-beta.3/Rx.umd.js"></script>
<script src="https://code.angularjs.org/2.0.0-beta.3/angular2-polyfills.js"></script>
<script src="https://code.angularjs.org/2.0.0-beta.3/angular2-all.umd.dev.js"></script>
如果你想

使用 TypeScript 来编写你的应用程序,你需要一个转译器:

  • 静态的。例如,在后台运行tsc -w命令
  • 在飞行中。直接在浏览器中使用打字稿.js文件

也就是说,只能用ES5编写Angular2应用程序。下面是一个示例:

  • http://blog.thoughtram.io/angular/2015/07/06/even-better-es5-code-for-angular-2.html

编辑

当你包含来自 Angular2(文件夹 node_modules/angular2/bundles)的这些 JavaScript 文件时,没有任何关于 TypeScript 的内容:

<script src="node_modules/angular2/bundles/angular2-polyfills.js"></script>
<script src="node_modules/systemjs/dist/system.src.js"></script>
<script src="node_modules/rxjs/bundles/Rx.js"></script>
<script src="node_modules/angular2/bundles/angular2.dev.js"></script>
<script src="node_modules/angular2/bundles/router.dev.js"></script>
<script src="node_modules/angular2/bundles/http.dev.js"></script>

这些文件被转译成JavaScript。所以没有必要有TypeScript。有了它们,您只能使用 ES6 实现您的应用程序。

要仅使用 ES5,您需要包含以下内容:

<script src="node_modules/angular2/bundles/Rx.umd.js"></script>
<script src="node_modules/angular2/bundles/angular2-polyfills.js"></script>
<script src="node_modules/angular2/bundles/angular2-all.umd.dev.js"></script>