有没有一种方法可以在渲染时自动注入深度嵌套的实体数据?
const mapStateToProps = (state, ownProps) => {
let boardId = ownProps.params.id
return {
id: boardId,
// is there an easier method to do this?
comments: state.entities.boards[boardId].comments.map(id => {
return Object.assign({}, state.entities.comments[id], {
user: state.entities.users[state.entities.comments[id].user]
})
})
}
}
没有什么是"自动"的,但有三种方法可以抽象这类东西:
1) 使用"选择器"函数封装状态形状,并应用记忆。请参阅计算衍生数据并重新选择
2) 使用许多不可变的数据实用程序库中的一个来进行一些嵌套的获取/设置
3) 使用Redux-ORM来抽象处理Redux存储中的关系数据。