我觉得我可能会过多地对抗Normalizr并且可能误解了我能做什么而不能用它。我想采用平面数据结构,并从平面数据中包含的引用构建嵌套树。
例如,我想作为输入:
const data = [
{
"id": 1077,
"title": "Hello world",
"children": [{
"id": 3076
}]
},
{
"id": 3076,
"title": "Hello foo",
"children": [{
"id": 3077
}]
},
{
"id": 3077,
"title": "Hello bar",
"children": []
},
{
"id": 3078,
"title": "Goodbye world",
"children": [],
}
];
输出嵌套树表示:
[
{
"id": 1077,
"title": "Hello world",
"children": [{
"id": 3076,
"title": "Hello foo",
"children": [{
"id": 3077,
"title": "Hello bar",
"children": []
}]
}]
},
{
"id": 3078,
"title": "Goodbye world",
"children": [],
}
];
然后,我希望能够在返回服务器之前将树规范化为平面结构。我可以想到在Normalizr之外有很多方法可以做到这一点,但是我希望我可以根据自己的意愿弯曲Normalizr并沿途学习。