嗨,我的包装对象的规范化有问题。
我有一个仪表板和布局对象的数据数组,其中包含响应视图的断点。
想要将它们标准化为两个实体,我指的是仪表板和布局。
{
"dashboards":[
{
"id":1,
"name":"First",
"mode":"2",
"layouts":{
"lg":[
{
"x":0,
"y":0,
"w":2,
"h":2,
"i":"sm1"
},
{
"x":2,
"y":0,
"w":2,
"h":2,
"i":"sm2"
}
],
"md":[
{
"x":2,
"y":0,
"w":2,
"h":2,
"i":"sm2"
}
]
}
}
]
}我试过这样做。但是我不能从仪表板上得到钥匙并把它放到布局中,因为这是一对一的关系。
const layouts = new schema.Entity('layouts');
const mode = new schema.Entity('modes');
const dashboards = new schema.Entity('dashboards', {
layouts: layouts,
mode: mode
});
const dashboardListSchema = new schema.Array(dashboards);
const normalizedData = normalize(response, dashboardListSchema);目前,我的输出就像dat:
仪表板:{ "1":{ "id":1,“名称”:"Główny",“模式”:"2“}
布局:{“未定义”:{ "x":0,"y":0,"w":2,"h":2,"i":"sm1“},{ "x":2,"y":0,"w":2,"h":2,"i":"sm2”},"md":{ "x":2,"y":0,"w":2,"h":2,"i":"sm2“}}
我要的是仪表板的id,而不是未定义的。有人能帮我吗?
发布于 2018-03-08 08:37:43
这是我的解决方案:)
const layouts = new schema.Entity('layouts', {}, {
idAttribute: (value, parent) => parent.id
});https://stackoverflow.com/questions/49151453
复制相似问题