redux+react实例todos AddTodo.js里面的dispatch怎么来的

  • APP.js

import React from 'react'
import Footer from './Footer'
import AddTodo from '../containers/AddTodo'
import VisibleTodoList from '../containers/VisibleTodoList'

const App = () => (
  <div>
    <AddTodo />
    <VisibleTodoList />
    <Footer />
  </div>
)

export default App
  • Addtodo.js文件

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);

我想知道dispatch 是怎么传入AddTodo的
在这个项目中 我并没有看到有传入值的地方

阅读 3.4k
2 个回答

你代码没有贴全,在最后渲染时Provider提供store

ReactDOM.render(<Provider store={store}>
    <your components>
</Provider>,document.getElementById('app'))

dispatch 就在store中,ES6语法({dispatch})=> { } 就直接拿到了

参数 这是es6的写法

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题