React:在构造函数中设置this.props ......? (不是试图改变道具)

时间:2016-07-25 11:54:50

标签: reactjs ecmascript-6

我不想改变道具。 我只想在构造函数中调用的方法中访问this.props:

constructor(props){
    super(props);

    this.props = props; // CAN I? There is no errors or warnings

    const filtered = this.filterValue(props.value);
    this.state = {
        value: filtered,
    }
}

filterValue(value){
    // here I need this.props.*
}

我知道有几种方法可以做到这一点,例如传递给filterValue的附加参数,但我希望它尽可能简单。我认为上面的代码是 非常直观,问题是:我可以这样做吗?无论如何,React会覆盖this.props。

1 个答案:

答案 0 :(得分:5)

您可以使用the React.Component documentation中描述的方法{/ 1}}访问道具:

  

实例属性:

     
      
  • 道具

  •   
  • 状态

  •   

如果您感到好奇,可以查看ReactComponent constructor的源代码。