【发布时间】:2017-03-16 03:07:41
【问题描述】:
我可能遗漏了一些非常明显的东西,并想澄清自己。
这是我的理解。
在一个幼稚的反应组件中,我们有states 和props。用setState 更新state 会重新渲染整个组件。 props 大多是只读的,更新它们没有意义。
在通过store.subscribe(render) 之类的方式订阅redux store 的react 组件中,它显然会在每次更新store 时重新渲染。
react-redux 有一个帮助器 connect() 将状态树的一部分(组件感兴趣)和 actionCreators 作为 props 注入到组件中,通常通过类似
const TodoListComponent = connect(
mapStateToProps,
mapDispatchToProps
)(TodoList)
但是了解setState对于TodoListComponent对redux状态树更改(重新渲染)做出反应是必不可少的,我在@中找不到任何state或setState相关代码987654336@ 组件文件。它的内容如下:
const TodoList = ({ todos, onTodoClick }) => (
<ul>
{todos.map(todo =>
<Todo
key={todo.id}
{...todo}
onClick={() => onTodoClick(todo.id)}
/>
)}
</ul>
)
有人可以指出我缺少什么的正确方向吗?
P.S 我正在关注与redux package 捆绑在一起的待办事项列表示例。
【问题讨论】:
标签: reactjs redux react-redux