react:初始状态值未定义

时间:2016-10-31 14:01:01

标签: reactjs

我正在尝试为我的州设置初始值。我使用constructor将一些值填充到我的状态。

import React,{Component} from 'react';

export default class RandomWords extends Component{
   constructor(props){
    super(props);
    const str="Italy quake: Norcia tremor destroys ancient buildings";
    const words = str.split(" ");
    this.state= {
      activeWord:0,
      activeLetter:0,
      words:words
    };
  }
      render(){
        console.log("words are:"+this.props.words);
          return(<div>
              {  this.props.words }
            </div>)
      }
}

然后我使用mapStateToPropsstate连接到props。这是容器:

import RandomWords from '../components/RandomWords';
import {connect} from 'react-redux';

function mapStateToProps(state){

    return ({words:state.words,
            activeLetter:state.activeLetter,
            activeWord:state.activeWord});
}

export default connect(mapStateToProps)(RandomWords);

如您所见,在我的render()函数中,我有console.log("words are:"+this.props.Words);,我希望看到分裂的单词。 但在控制台中只有undefined

1 个答案:

答案 0 :(得分:2)

mapStateToProps用于将商店中的Redux state映射到组件的道具。

但是,您正在初始化component state。两个不同的概念。您可以通过this.state

访问组件状态
 render(){
     console.log("words are:" + this.state.words);
     return(<div>
         {this.state.words}
     </div>)
  }