【发布时间】:2020-06-18 01:05:41
【问题描述】:
我对 Angular 5 的某些方面有些不确定。我开发了一个应用,但不知道如何在生产环境中运行它。
目前我在 NodeJS 中使用 ng serve 运行我的应用程序,但在生产环境中是否相同?
谢谢!
【问题讨论】:
标签: node.js angular angular5 application-server
我对 Angular 5 的某些方面有些不确定。我开发了一个应用,但不知道如何在生产环境中运行它。
目前我在 NodeJS 中使用 ng serve 运行我的应用程序,但在生产环境中是否相同?
谢谢!
【问题讨论】:
标签: node.js angular angular5 application-server
ng 服务
ng serve 用于开发目的。检查docs。
使用ng serve 时,编译后的输出来自内存,而不是磁盘。
这意味着所服务的应用程序不在磁盘上的 dist 文件夹中。
ng 构建
ng build --prod 用于生产目的。检查docs。
ng build 将应用程序编译到输出目录中。
构建工件将存储在 dist/ 目录中,在您的 Angular 应用程序的根目录内。
只需将 dist 文件夹复制到任何服务器,例如 IIS 或 Node Express,您的 Angular 应用程序就会启动并运行。
【讨论】:
一般来说,我不使用 Angular CLI 的内置 Web 服务器进行生产部署。
使用 Angular CLI,您可以使用此命令创建生产版本
ng build –prod
这将创建一个 dist 文件夹,您可以将其上传到您选择的任何 Web 服务器以部署应用程序。
【讨论】:
首先,您应该使用
构建您的生产应用ng build --prod
您会在您的项目文件夹中找到一个dist 文件夹。这是您应用的生产就绪版本。
现在您需要一台服务器来部署您的应用。安装这个 - https://www.npmjs.com/package/http-server 并使用 http-server dist/myProject 运行(将 myProject 替换为您的项目名称)
【讨论】:
ng build 在outDir 文件夹中生成生产文件。
要知道它在哪里,请转到.angular-cli.json 文件并查看apps > outDir 属性。例如:
"apps": [
{
"root": "src",
"outDir": "../../webapp/recorder",
"assets": [
"assets",
"favicon.ico"
],
...
这些文件只有html、css和javascript,可以在任何网络服务器上使用
【讨论】: