Angular 15:获取 TypeError:(中间值).ngOnDestroy 不是 ServerStylesHost.ngOnDestroy 的函数

问题描述 投票:0回答:2

我得到了

TypeError: (intermediate value).ngOnDestroy is not a function at ServerStylesHost.ngOnDestroy
当向我的 Angular 15 应用程序添加 ssr 支持时。

应用程序在正常服务时可以工作,但在使用 ssr 时可以工作

npm run dev:ssr

npm run build:ssr && npm run serve:ssr
抛出该错误

有人已经遇到过这个问题吗?

无法发现问题

angular server-side-rendering angular-universal
2个回答
0
投票

使其工作的一种方法是注释掉 dist/YOUR_APP_NAME/server/vendor.js 中的 ngOnDestroy() 方法中的 3 行代码,然后使用 npm runserve:ssr

再次运行
ngOnDestroy() {
// this._styleNodes.forEach(styleNode => styleNode.remove());
// this._styleNodes.clear();
// super.ngOnDestroy();
}

使用SSR部署时出现同样的问题,当时从main.js文件中删除以下代码并部署它。

ngOnDestroy(){this._styleNodes.forEach(styleNode => styleNode.remove());this._styleNodes.clear();super.ngOnDestroy();}

0
投票

我在 Angular 15 中遇到了同样的问题,升级到 Angular 16 后问题得到解决。

© www.soinside.com 2019 - 2024. All rights reserved.