小编典典

与mapStateToProps一起使用时,“无法读取未定义的属性'map'”

reactjs

我试图在我的react / redux功能组件中显示我的状态(用户):

const Dumb = ({ users }) => {
  console.log('users', users)
  return (
    <div>
      <ul>
        {users.map(user => <li>user</li>)}
      </ul>
    </div>
  )
}

const data = state => ({
  users: state
})


connect(data, null)(Dumb)

哑巴用于容器组件中。users.map语句有问题,但是我认为数据是通过connect语句注入的?减速器的初始状态为1个名称:

const users = (state = ['Jack'], action) => {
  switch (action.type) {
    case 'RECEIVED_DATA':
      return action.data

    default:
      return state
  }
}

CodeSandbox


阅读 228

收藏
2020-07-22

共1个答案

小编典典

渲染时未使用连接的组件,因此道具在组件中不可用

const ConnectedDumb = connect(
  data,
  null
)(Dumb);

class Container extends React.Component {
  render() {
    return (
      <div>
        <ConnectedDumb />
      </div>
    );
  }
}

工作演示

2020-07-22