在键子上映射



我有一个这样格式的代码:

export const formatAgreementsData = (t, agreementsData, statesList) => agreementsData.map((item) => ({
[t("tables:headers.name")]: item.full_name,
[t("tables:headers.title")]: item.agreements.agreement_title,
...

它正在为每个"item"创建一个表行(这是一个"雇员")。但是,我希望它为每个"item.agreements"创建一行。例如,一个雇员可以有5个协议,我希望它创建5行,重复雇员的full_name 5次,并为雇员拥有的5个协议中的每个协议迭代标题。

你可以使用Array.prototype.flat()来获得你想要的。

见https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/flat)

例如:

export const formatAgreementsData = (t, agreementsData, statesList) => 
agreementsData.map(item => 
item.agreements.map(agreement => {
return {
[t("tables:headers.name")]: item.full_name,
[t("tables:headers.title")]: agreement.title,
...
}
})
).flat()

相关内容

  • 没有找到相关文章