我使用不同的状态库和相同的方法制作了许多大型 Angular 应用程序:按“常识”划分大组件,例如路由器的“页面”,其中有一些子项,例如左侧的网格和右侧的编辑表单。像这样的每个组件都有零 @inputs 并直接从商店使用订阅。
但是现在我开始另一个应用程序并暂停考虑它 - 也许我制作了太多组件,也许它对性能有影响?
例如,我有一级 - 路由器延迟加载模块,该模块具有顶级“持有人”组件,顶部有工具栏和子页面链接,右上角应该有用户名和头像 - 带有用于注销等操作的菜单。
那么在性能方面什么是“正确”的方式:
- 我的默认方式 - 我制作“用户菜单”组件并在其中使用状态选择器来获取名称和图像。
- 或者使该组件“哑”并在父组件中读取状态并通过@Input传递,但是从顶层传入是正确的,将是输入的基调......
但也许它会更快......同时这个组件将只在一个地方使用 - 根本不需要它,但是顶级看起来很糟糕......
也许有人可以建议一些文档或文章,或者链接到一些具有真实世界规模的开源 Angular 应用程序,而不是像人们在 VSCode 中手动输入导入的 youtube 视频上的待办事项列表。