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

Angular2设计-组件嵌套和性能风险,angular,Angular,当我必须构建一个具有许多功能的复杂页面时,我通常会以一种设计结束,这种设计将复杂页面预见为一系列更简单组件的组合,甚至可能是更简单组件的组合(换句话说,我指的是多个级别的嵌套组件) 这样简单的组件不是为了重用而构建的(没有其他页面会使用它们),而是为了使代码更易于阅读和理解(这仍然是一件好事) 无论如何,我的问题是,一个预见到通过组合和不同嵌套级别构建页面的设计是否可能会严重影响性能,因此需要仔细观察 我认为这个问题听起来可能有点模糊,但我基本上想知道的是嵌套组件是否会对Angular2应用程序

当我必须构建一个具有许多功能的复杂页面时,我通常会以一种设计结束,这种设计将复杂页面预见为一系列更简单组件的组合,甚至可能是更简单组件的组合(换句话说,我指的是多个级别的嵌套组件)

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

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

我认为这个问题听起来可能有点模糊,但我基本上想知道的是嵌套组件是否会对Angular2应用程序的性能造成严重风险。我说的是合理数量的嵌套(比方说3-4层)和功能丰富性无法降低的页面(即,没有嵌套的页面必须位于顶部页面)

我希望这个问题不要显得太天真


提前谢谢

不用客气。我认为嵌套可以提高性能。特别是如果您使用
ChangeDetectionStategy.OnPush
对更改检测进行微调。这样可以限制Angular需要运行更改检测的范围,直到明确告诉Angular进行检查


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

感谢您的回答,更改检测策略是一个很好的提示