如何将在Typescript中开发的Angular 2应用程序部署到生产中?

Jij*_* PK 41 angular

我是Angular 2的新手.我对Angular 2在生产环境中的工作原理感到困惑.

  1. 在生产服务器中运行Angular 2应用程序的先决条件是什么?

  2. 是否可以在IIS服务器中部署应用程序或是否需要节点服务器?

  3. 在使用节点在开发机器中编译文件之后,我们是否需要将.js和.ts部署到生产中?

bra*_*ndo 17

我使用JSPM使我的angular2项目生产准备就绪.其他流行的工具,如JSPM,包括webpack和browserfy.JSPM将完成的一项重要任务是捆绑构成angular2项目的各种模块.我还将"selfExecutingBundle"标志设置为true,并让JSPM生成一个捆绑的js文件(例如myApp.bundled.js),然后从中缩小它(myApp.bundled.min.js)并在此处使用此一个脚本引用index.html文件.

<html>

<head>
    <title>Hello Angular World</title>
</head>
<body>
<div>
    <my-app>Loading...</my-app>
</div>
    <script src="/js/myApp.bundle.min.js"></script>
</body>

</html>
Run Code Online (Sandbox Code Playgroud)

这就是你所需要的!

将来,当HTTP/2规范更常见时,可能不需要捆绑基于模块的项目,但是现在我认为需要捆绑.

没有引用您的打字稿文件(因为它们已经在制作myApp.bundled.js的过程中被编译).正如Zama所说,你可以在任何服务器上运行angular2(我使用IIS并且工作正常).

更新:自Angular 2的最终版本发布以来,我已经转而使用angular-cli进行生产.设置很简单(没有吞食任务的意大利面),最终的捆绑是超级优化的(特别是由于树木摇晃).我建议检查angular-cli,以便设置,开发和构建你的ng2项目.

  • 您是否有关于如何将打字稿中的所有内容捆绑到单个文件中并将其缩小的指南或内容?我试图将我的角度应用程序首次投入生产.由于我是Typescript的新手,我不知道什么是好方法. (2认同)

Zam*_*med 8

Angular 2应用程序是用TS编写的,但浏览器最后只能理解JavaScript.因此任何TS项目都会在开发时转换为JavaScript第一个事件.

您可以在任何服务器上运行angular 2应用程序.

您只需部署.js文件,因为浏览器不会解析.ts文件.