我有一個物件,我想用它來構建一個表,但是我需要使用鍵的值作為顯示資料的一部分。我的資料如下所示:
{
templates: {
some_visit_1: {
template: "A long block or rich text",
editedAt: "timestamp",
editedBy: "name",
},
some_visit_2: {
template: "A different block of rich text",
editedAt: "timestamp",
editedBy: "Name",
},
},
},
我試過使用
let data = result.templates;
const templates = Object.entries(data);
但這給了我嵌套陣列,其中鍵作為一個值,一個物件作為第二個值。我想創建一個物件陣列,其中每個物件都包含初始物件內的鍵和所有值。
更進一步,我認為我可以映射新陣列并將資料傳播到一個物件中,但這只會導致錯誤。
const templates = Object.entries(data).map((item, idx) => {
const values = item[1];
return {
...items,
items: {
name: item[0],
editedAt: item[1].editedAt,
editedBy: item[1].editedBy,
template: item[1].template,
},
};
});
有沒有一種方法可以將物件中的鍵和所有值組合成一個物件?
像這樣:
[
{
{
name: some_visit_1,
template: "A long block or rich text",
editedAt: "timestamp",
editedBy: "name",
},
{
name: some_visit_2,
template: "A different block of rich text",
editedAt: "timestamp",
editedBy: "Name",
}
]
uj5u.com熱心網友回復:
這是預期的嗎?。我用過Object.entries和map
let data = {
templates: {
some_visit_1: {
template: "A long block or rich text",
editedAt: "timestamp",
editedBy: "name",
},
some_visit_2: {
template: "A different block of rich text",
editedAt: "timestamp",
editedBy: "Name",
},
},
}
let result = Object.entries(data.templates).map(([key, value]) => {
return {
name: key,
...value,
}
});
console.log(result);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/390129.html
