如何让减速机工作?

时间:2016-10-08 06:00:04

标签: reactjs react-redux

我刚开始学习reactjs& redux并试图将项目添加到列表中。这是我的根组件:

//create store based on reducer
const store = createStore(listItem)
const rootEl = document.getElementById('root')

//render root component
const render = () => ReactDOM.render(
  <List
        addToList={() => store.dispatch({ type: 'ADD_TO_LISTS' },'testing')}
  />,
  rootEl
)

//call
render()

//subscribe the store
store.subscribe(render)

在列表组件中,render方法如下所示:

 render() {
    const { addToList } = this.props
    return (
      <p>
        <input type="text"  />
        <button onClick={addToList}>add</button>
       </p>
    )
  }

reducer看起来像这样:

const listItem = (state, action)  => {
  switch (action.type) {
    case 'ADD_TO_LIST':
      return [...state,action.text]

    default:
      return state
  }
}

然而,当我运行应用程序时,它会抛出一个错误:

Uncaught error: expected reducer to be a function

我的代码有什么问题?

1 个答案:

答案 0 :(得分:1)

我想通了,忘了把出口默认的listItem&#39;在减速机的末尾