我正在閱讀redux的示例文檔,並且我找到了容器組件的示例。有人可以解釋爲什麼在這種情況下mapDispatchToProps不需要在這裏。另外,函數如何獲得調度功能?如何在沒有map的情況下連接工作DispatchToProps
import React from 'react'
import { connect } from 'react-redux'
import { addTodo } from '../actions'
let AddTodo = ({ dispatch }) => {
let input
return (
<div>
<form onSubmit={e => {
e.preventDefault()
if (!input.value.trim()) {
return
}
dispatch(addTodo(input.value))
input.value = ''
}}>
<input ref={node => {
input = node
}} />
<button type="submit">
Add Todo
</button>
</form>
</div>
)
}
AddTodo = connect()(AddTodo)
export default AddTodo
我明白這個概念,但我不知道在這種情況下,組件是如何接收調度的。我的印象是接收調度函數,我需要傳遞一個mapDispatchToProps,在這種情況下並不是這樣。是不是因爲我將組件傳遞給連接函數,現在它以某種方式接收調度? – Nate
調度將作爲道具從父組件傳遞到此組件。 – nrgwsth
但這種做法並不好。你應該使用connect來傳遞調度和道具。閱讀gaearon的評論[這裏](https://github.com/reactjs/redux/issues/1176) – nrgwsth