React + Redux - 架构 Apis 方法
React + Redux - architectural Apis approach
我有一个带有 redux 的 React 应用程序,我有两个 api 调用为我获取数据。
第一个api调用returns一组题目数组
第二个api调用returns每个问题的一组答案
我也有一个 api 电话来获取特定问题的答案
第一个Api调用
{parent: 1, name: "default", id: 36}
{parent: 36, name: "help?", id: 2}
{parent: 36, name: "help me?", id: 3}
{parent: 35, name: "Don't help them?", id: 3}
第二次Api通话
{answer: "Yes", questionid: 2, id: 1, question: "help?"}
{answer: "No", questionid: 2, id: 2, question: "help?"}
{answer: "Maybe", questionid: 2, id: 3, question: "help?"}
{answer: "Yes", questionid: 3, id: 1, question: "help me?"}
{answer: "No", questionid: 3, id: 2, question: "help me?"}
数据应如下所示
群组名称:默认
求助?是的,不,也许
帮帮我?是,否
我该怎么做,我应该循环寻找问题然后循环寻找答案的每个问题,全部在两个 api 调用中,或者我应该循环寻找问题和我应该调用的每个问题api 的答案?
您可以使用 reselect(库)并通过合并选择器中的属性获得正确的结果。
https://github.com/reduxjs/reselect
这是很好的归一化状态,因此没有必要对其进行反归一化。
因此,首先您将从标准化状态获取所有元素,然后从第二个 API 获取所有可能的结果。遍历第一个元素并过滤掉第二个 API 的答案,其中 parentId 不等于 id.
我有一个带有 redux 的 React 应用程序,我有两个 api 调用为我获取数据。
第一个api调用returns一组题目数组
第二个api调用returns每个问题的一组答案
我也有一个 api 电话来获取特定问题的答案
第一个Api调用
{parent: 1, name: "default", id: 36}
{parent: 36, name: "help?", id: 2}
{parent: 36, name: "help me?", id: 3}
{parent: 35, name: "Don't help them?", id: 3}
第二次Api通话
{answer: "Yes", questionid: 2, id: 1, question: "help?"}
{answer: "No", questionid: 2, id: 2, question: "help?"}
{answer: "Maybe", questionid: 2, id: 3, question: "help?"}
{answer: "Yes", questionid: 3, id: 1, question: "help me?"}
{answer: "No", questionid: 3, id: 2, question: "help me?"}
数据应如下所示
群组名称:默认
求助?是的,不,也许
帮帮我?是,否
我该怎么做,我应该循环寻找问题然后循环寻找答案的每个问题,全部在两个 api 调用中,或者我应该循环寻找问题和我应该调用的每个问题api 的答案?
您可以使用 reselect(库)并通过合并选择器中的属性获得正确的结果。 https://github.com/reduxjs/reselect
这是很好的归一化状态,因此没有必要对其进行反归一化。
因此,首先您将从标准化状态获取所有元素,然后从第二个 API 获取所有可能的结果。遍历第一个元素并过滤掉第二个 API 的答案,其中 parentId 不等于 id.