React+Redux:状态未定义

React+Redux: State undefined

我正在研究 React 和 Redux,运行 遇到一些连接问题。

const AppConnected = connect((state) => {text: state.text})(App);

在第一个示例中,我收到错误消息 Cannot get 'text' of undefined,而第二个示例运行没有问题。这背后的原因是什么?

const AppConnected = connect((state) => {
    return {
        text: state.text
    }
})(App);

您并没有像您认为的那样 return 在第一个示例中创建对象。您正在使用名为 text.

的标签定义函数主体

要 return 来自箭头的对象文字,您需要将其包装在 ().

(state) => ({})

JavaScript中的标签用于控制执行流程。这不是推荐的模式,但工作方式如下:

function () {
text: while(someCondition){ // Label
  if (someOtherCondition) {
    continue text;
  }
} 
}

DOCS:

将正文括起来 return 一个对象字面量表达式:

const AppConnected = connect(state => ({text: state.text}))(App);