实际上,这些文件是 Angular2 及其依赖项的捆绑版本。它们可以在使用 TypeScript 编写的应用程序中使用。事实上,TypeScript 不能开箱即用地用于浏览器。您必须对它们进行预处理,以便使用 TypeScript 编译器将它们编译成 ES 代码,或者直接使用 TypeScript 库在浏览器中对其进行转译。
这可以在 SystemJS 中直接通过其transpiler 配置属性进行配置(见下文)。
首先只需将这些文件添加到您的 HTML 文件中:
<script src="https://code.angularjs.org/2.0.0-beta.2/angular2-polyfills.js"></script>
<script src="https://code.angularjs.org/tools/system.js"></script>
<script src="https://code.angularjs.org/tools/typescript.js"></script>
<script src="https://code.angularjs.org/2.0.0-beta.2/Rx.js"></script>
<script src="https://code.angularjs.org/2.0.0-beta.2/angular2.dev.js"></script>
<script src="https://code.angularjs.org/2.0.0-beta.2/http.dev.js"></script>
如果你想实现一个没有 NPM 的应用程序,你可以在浏览器中编译你的 TypeScript 文件。这是我们使用 plunkr 时的方式。为此,您需要按如下所述配置 SystemJS:
<script>
System.config({
transpiler: 'typescript',
typescriptOptions: {
emitDecoratorMetadata: true
},
packages: {
'app': {
defaultExtension: 'ts'
}
}
});
System.import('app/main')
.then(null, console.error.bind(console));
</script>
小心在app 文件夹下定义您的 TypeScript 文件
这是一个简单(且完整)的 plunkr,描述了如何做到这一点:https://plnkr.co/edit/vYQPePG4KDoktPoGaxYu?p=info。
你可以下载相应的代码,并在本地使用它的代码和一个像http-server这样的静态HTTP服务器,而不需要使用NPM。这可能是您的用例的一个很好的起点...
编辑
如果你的 TypeScript 文件是 VS 编译的,你需要适配 SystemJS 的配置,如下所述:
<script>
System.config({
packages: {
app: {
defaultExtension: 'js',
}
}
});
System.import('app/boot')
.then(null, console.error.bind(console));
</script>
这样,SystemJS 会在导入时加载您的 JS 文件。例如:System.import('app/boot') 将使用 app/boot.js 而不是 TypeScript