如何处理相关实体

时间:2017-03-26 18:37:07

标签: angular redux ngrx

如果我使用 ngrx-store (redux)拥有相关实体,如何构建应用状态?

例如,我有一个名为" Post"和休息api像这样返回json:

[
   { id: 1, title: 'Title 1', user: { id: 1, name: 'User name' } },
   { id: 2, title: 'Title 2', user: { id: 1, name: 'User name' } },
]

存储该数据的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

没有单一,最佳的方式来存储数据,但您should store relational data in a normalized fashion。例如,您可以存储如下内容:

{
  "posts": { 
    "1": { 
      id: 1,
      title: "Title 1",
      user: 1
    },
    "2": { 
      id: 2,
      title: "Title 2",
      user: 1
    }
  },
  "users": {
    "1": {
      "id": 1,
      "name": "User name"
    }
  }
}

normalizr可以帮助重新安排关系数据以便在Redux商店中存储。

此外,还有一个相关的答案here,其中包含其他参考资料。

相关问题