gpt4 book ai didi

Angular 2 : Best Practice for Data Layer

转载 作者:太空狗 更新时间:2023-10-29 17:33:06 25 4
gpt4 key购买 nike

我是 Angular2 的新手,正在边做边学。现在我已经成功地构建了一个具有父组件、几个子组件和数据库服务的多 View 。现在我将转向使用各自的父子组件实现其他 View 。

应用程序应该使用相同的数据集,可以在其他组件中添加/更新/删除,所以我正在考虑有一个单独的数据层,应用程序的所有组件都可以直接查询它。更重要的是——我需要相同的服务实例,这样中间数据随处可用,同时避免不必要的数据库访问。在 Angular2 中定义和使用此类的最佳方式是什么?

更新问题:那么现在,当我可以在整个应用程序中直接访问同一数据层实例的变量时,处理组件内变量的最佳方法是什么?

a) 我是否应该使用本地组件变量,它们是相同数据层变量的副本(因此显式加载、获取和设置它们),如

this.locations = this.datalayer.locations;
this.selectedLocation;

updateLocation(id) {
this.selectedLocation = id;
this.datalayer.setSelectedLocation(id);
}

getSelectedLocation() {
return this.selectedLocation;
}

b)我应该专门处理数据层变量,遍历它们,从组件中获取和设置它们吗?

updateLocation(id) {
this.datalayer.selectedLocation = id;
}

getSelectedLocation() {
return this.datalayer.selectedLocation;
}

或者也许有选项 c?

最佳答案

我假设您需要一种服务,该服务可供所有组件使用,目的是与数据进行交互。

您还需要一个单例服务。

解决方案是创建服务并在应用级别提供它。

查看更多:

How can I create a singleton service in Angular 2?

关于 Angular 2 : Best Practice for Data Layer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41161056/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com