我使用React和Redux作为我的商店。我还使用react-redux库来集成这两者。我的商店包含两组数据:
我有一个TaskListComponent(使用react-redux)connect
- s到我的商店使用:
@connect(state => {
tasks: state.tasks,
users: state.users
})
我需要这两个,因为该列表有一个允许搜索我的任务名称或用户名的过滤器 - 我的组件需要是“用户感知的”。
此组件列出另一个名为TaskItemComponent的组件,该组件显示任务名称和分配用户的名称。
我很难决定解决任务分配用户的最佳方法。
React指南告诉我,Item组件应该将Task作为prop,并在render函数中解析User本身。但是,这需要组件具有存储感知功能,并且使用react-redux库,它似乎不会被设计为允许组件访问存储而不会connect
编辑它。
或者我可以解析列表中的用户并将其与任务一起传递给Item组件,例如<TaskItemComponent task={task} assignee={resolveTaskAssignee(task)} />
。这有利于保持我的物品“哑”,并且意味着我不需要让它听取商店的变化(甚至了解商店)。
任何建议都将受到赞赏。
答案 0 :(得分:1)
两种方法都很好。我首先从外面传递道具,一旦它变得单调乏味,让task
组件接收user
作为道具,但通过使用来阅读connect
pm2 start app.js --watch
。
答案 1 :(得分:0)
选项#2没有任何内在错误。你必须在某处做数据操作。它始终是在smart
组件中执行这些操作的正确位置。
就个人而言,我更喜欢商店里更好的数据模型。但是,你得到了你得到的东西。