我总是对mapdispatchtoprops的破坏性分配的用法感到困惑。
connect(mapStateToProps, mapDispatchToProps)(MyComponent)
const mapDispatchToProps = dispatch => {
return {
onTodoClick: id => {
dispatch(toggleTodo(id)) //-----> using dispatch here
}
}
}
但是以下内容也适用:
const onTodoClick = () => {
type: ADD_TODO,
text: 'Build my first Redux app'
}
connect(mapStateToProps, {onTodoClick} )(MyComponent)
我的困惑是在第二种情况下“派遣”发生在哪里?与第一种情况不同,第二种情况没有显式调用dispatch。相反,“ onTodoClick”仅返回一个动作。