我可能错过了一些非常明显的事情,我想澄清一下.
这是我的理解
在订阅redux存储的react组件中,通过类似store.subscribe(render)
的方式,它显然会在每次更新存储时重新渲染.
react-redux有一个助手connect()
,它将部分状态树(组件感兴趣的)和actionCreators作为props
注入组件,通常通过以下方式
const TodoListComponent = connect(
mapStateToProps,
mapDispatchToProps
)(TodoList)
但是由于理解了setState
对于TodoListComponent
响应redux状态树更改(重新渲染)是必不可少的,我在TodoList
组件文件中找不到任何state
或setState
相关代码.它是这样写的:
const TodoList = ({ todos, onTodoClick }) => (
<ul>
{todos.map(todo =>
<Todo
key={todo.id}
{...todo}
onClick={() => onTodoClick(todo.id)}
/>
)}
</ul>
)
有人能给我指出正确的方向吗?我错过了什么?
另外,我将遵循redux package的待办事项 list 示例.