Angular2设计——组件嵌套和性能风险

标签 angular

当我必须构建一个具有许多功能的复杂页面时,我通常会在设计中预见到复杂页面是一系列更简单的页面的组合组件,它也可能是一个更简单的组件的组合(换句话说,我说的是不止一层的嵌套组件)。

这样的更简单的组件并不是为了可重用性而构建的(没有其他页面会使用它们)而是为了让代码更易于阅读和理解(这仍然是一件好事).

无论如何,我的问题是,预见通过组合和不同级别的嵌套构建页面的设计是否可能会严重影响性能,因此需要仔细观察。

我认为这个问题听起来有点含糊,但我基本上想知道嵌套组件是否对 Angular2 应用程序的性能构成严重风险。我说的是合理数量的嵌套层级(比如 3 - 4 层)和功能丰富性不能降低的页面(即没有嵌套的必须在首页)。

我希望这个问题不会显得太幼稚。

提前致谢

最佳答案

完全没有。我认为嵌套反而可以提高性能。特别是如果您使用例如 ChangeDetectionStategy.OnPush 微调更改检测。通过这种方式,您可以限制 Angular 需要运行变更检测的范围,直到您明确告诉 Angular 进行检查。

Angular 或使用 Angular2 univeral 的服务器端渲染将提供(或已经提供)的构建步骤也将减少 Angular 在加载页面和通过替换反射代码构建 DOM 时必须做的初始工作量通过生成的代码进行绑定(bind)和其他内容。

关于Angular2设计——组件嵌套和性能风险,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37027238/

相关文章:

angular - 使用相同的 URL 参数重新加载 Angular 4+ 路由

angular - fullcalendar v4 外部放置事件

javascript - 访问 Angular 6 中的动态 URL 参数

Angular Material AutoComplete,自动选择列表中的不同项目

angular - 在我的 Angular 服务中使用 promise 而不是 Observables

javascript - 如何确定 Observable.merge 中哪些 observable 发生了更改?

Angular 4 在按钮上动态添加点击事件

angular - 如何在ag-grid中为angular 2做分页

angular - 在 Visual Studio 2019 中创建 Angular 组件

这个关键字的 Angular 6 范围在子组件中是不同的