由于私有成员,Angular AOT构建失败

时间:2020-08-12 10:49:44

标签: angular angular8 angular2-aot

我正在开发一个迁移项目,该项目中已有基于 Angular 8 开发的UI应用程序代码库。

当我执行常规构建(即ng构建)时,我能够成功构建,但是部署的工件更大。

例如: main.js大小为(4.5 mb)

如果将上述artifcats部署到我的作品中,则我的页面将花费更多时间在浏览器中呈现。

因此,对于生产构建,我尝试以 AOT 模式构建我的角度应用程序,但是构建失败。

下面是从几乎每个模板获取的日志。

src/app/components/header/header.component.html(52,19): Property 'competenciesService' is private and only accessible within class 'HeaderComponent'

我从日志中了解到,我无法在 AOT 模式下在.html模板内使用私有成员。

但是由于我的应用程序是由其他团队构建的,因此我几乎无法更改每个模板中的属性。

请建议我使用他们的任何方法来解决此问题,以使生产构建构件的尺寸减小,从而提高应用程序性能。

Angualr CLI全局版本:8.3.15

Angular CLI本地版本:8.3.0

让我知道是否需要更多信息。

谢谢

1 个答案:

答案 0 :(得分:0)

由于要迁移代码,因此首要任务应该是尽可能地与您的框架兼容,即使这需要进行大量工作,因为将来应用程序将越来越难维护。模板只能访问公共变量。您可以在组件ts文件中添加吸气剂。