【发布时间】:2019-05-23 06:12:14
【问题描述】:
我有一个类组件,它的状态包含一个 filterItems[] 空白数组。我需要填充 filterItems 数组中的值
所以,我有一个来自 API 的数据,看起来像这样:
0:
emp_code: "a001"
company_code: "company_a"
keys: ["id", "post" ]
dtypes: ["str", "int"]
1:
emp_code: "b001"
company_code: "company_b"
keys: ["sal", "name" ]
dtypes: ["int", "str"]
//so on for other companies and employees
所以,像这样,我有几个员工。 现在我必须遍历这个 api 数据并提取信息并将其存储到另一个名为“filters”的数组中并将其传递给一个函数。
我的过滤器数组应该是这样的:
filters: [
{
key_name: "id",
company_code: "company_a",
input_type: "text",
dtype: "str"
},
{
key_name: "post",
company_code: "company_a",
input_type: "text",
dtype: "int"
},
//... keys for other company
]
基本上, 我需要在反应中做以下事情
for each emp_code
for each company_code
for each key:
keys[i]== filters.key_name
company_code== filters.company_code
//...so on
这里的问题是,每家公司都有一组键,所以如果员工属于同一家公司,那么我不需要再次添加到过滤器数组中。 所以,我基本上需要检查唯一的 company_code 并将公司拥有的不同类型的键添加到过滤器数组中。
【问题讨论】:
-
为什么不添加来自 api 的数据,而不是控制台日志?
-
是你正在努力解决的算法还是在 React 中的哪里做它才有意义?如果您使用 16.6 的响应,我认为
getDerivedStateFromProps可能是放置映射的合适位置
标签: javascript reactjs