转换用于渲染的规范化redux对象



我在React Native项目中使用Redux,希望得到一些转换数据以进行渲染的建议。我有一个我认为是标准化的userDetails对象,其形式为:

"userDetails": Object {
"allIds": Array [
"111",
"222",
"333",
],
"byId": Object {
"111": Object {
"name": "Bob",
"part": "1st",
"section": "A",
},
"222": Object {
"name": "Alice",
"part": "2nd",
"section": "B",
},
"333": Object {
"name": "Fred",
"part": "1st",
"section": "B",
},
},
},

我想渲染成一个React NativeSectionList,以section作为节头,列表按字母顺序先按section排序,然后按part排序。SectionList似乎需要以下形式的数据:

const DATA = [
{
section: "A",
data: ["111"]
},
{
section: "B",
data: ["333", "222"]
}
];

有人能就如何完成这件事给我建议吗?

使用一个名为reselect的库,它正是为此目的而设计的

最新更新