共享组件与基于功能的架构的 Angular 应用程序中的数据访问层交互是否可以接受?

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

我有一个遵循基于功能的架构的 Angular 应用程序。我需要创建一个将在多个功能组件之间使用的共享组件。这个共享组件应该调用 API 从后端服务器获取数据。

但是,如果我允许数据访问层直接与哑组件层交互,我担心可能会违反基于功能的架构原则。

这种方法会打破架构原则吗?如果是,那么在保持良好架构实践的同时处理这种情况的最佳方法是什么?

angular architecture frontend web-component angular17
1个回答
0
投票

如果您的共享组件是演示(哑)组件,那么它不应该调用 api 服务。这种架构的要点是智能组件收集所有数据,并将该数据作为输入提供给哑组件。

处理您的场景的方法很少。例如,您可以创建一个智能组件来包装您的共享组件。然后调用包装组件中的API。然后您可以在共享组件中使用该包装组件。这很好,因为智能组件可能很少层

我不知道您的案例的详细信息,但您可以阅读这篇文章以查看如何处理 smart-dumb 组件的不同示例 - https://blog.angular-university.io/angular-2-smart-components -vs-presentation-components-什么是差异-何时使用每个以及为什么/

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