gpt4 book ai didi

angular - 服务循环的 ngrx 效果

转载 作者:行者123 更新时间:2023-12-05 07:32:58 27 4
gpt4 key购买 nike

我是 ngrx 的新手,正在尝试让我的 ngrx 商店的 @Effect 函数正常工作。下面的代码显示了如果我没有使用 ngrx 商店,服务是如何工作的。我首先调用 http.get 来获取列表,然后迭代此列表以获取每个列表项。

export interface State {
listItems: ItemDescription[];
itemsData: ItemData[];
}

this.http.get('list-url').subscribe(listItems => {
listItems.map(item => {
this.http.get('list-item-url/' + item.id).subscribe(itemdata => {
state.itemsData.push(itemdata);
});
});
});

我的@Effect 函数应该是什么样子的?我是否需要将其分解为两个 @Effect 函数,一个用于获取列表,另一个用于获取项目?

最佳答案

我愿意,

  1. 使用@ngrx/entity 的 EntityState (ListItem, ItemData) 创建两个特征状态
  2. 首先获取列表并将它们添加到您的状态
  3. 然后获取 ListData 发送列表的所有 ID,这样您就可以通过一次调用来获取所有列表(如果您可以控制您的 API)。然后将它们添加到 ItemData 状态。
  4. 使用选择器进行过滤和显示。

我建议,您应该查看并学习example application 中的最佳实践。 .

关于angular - 服务循环的 ngrx 效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50847885/

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