Angular Universal - app-root 为空,仅用于生产构建

问题描述

在我的机器上启动 Angular Universal 应用程序需要三个步骤:

  1. ng build --prod
  2. 运行 my-city:server:production
  3. node dist/my-city/server/main.js

由于某些未知原因,当我像这样运行它时,在页面源中我有空的 app-root 标签 image1

如果我将第一步更改为“ng build”(没有 --prod 参数),app-root 标签就有一个很好的 SSR 内容。 image2

这是我用于生产构建的 angular.json 代码

rm -rf /Users/your_user_name/.local/share/virtualenvs/model-N-S4uBGU

这是我的 package.json 文件

"configurations": {
  "production": {
    "fileReplacements": [
      {
        "replace": "src/environments/environment.ts","with": "src/environments/environment.prod.ts"
      }
    ],"optimization": true,"outputHashing": "all","sourceMap": false,"namedChunks": false,"extractLicenses": true,"vendorChunk": false,"buildOptimizer": true,"budgets": [
      {
        "type": "initial","maximumWarning": "5mb","maximumError": "15mb"
      },{
        "type": "anyComponentStyle","maximumWarning": "5kb","maximumError": "15kb"
      }
    ],"serviceWorker": true,"ngswConfigPath": "./ngsw-config.json"
  }
} 

为什么“--prod”参数会破坏 SSR?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)