无法在构造函数React Native之外访问道具

时间:2019-03-18 02:21:05

标签: react-native react-props

我正在使用React Native开发一个应用程序,但是在访问我提供给我制作的组件的道具时遇到了麻烦。

如果我在构造函数中执行console.log(this.props),则可以在控制台中看到所需的道具显示,但是,如果将其放在任何其他方法中,则它将打印未定义的内容。我该如何访问从构造方法之外明显发送到组件的道具?

1 个答案:

答案 0 :(得分:2)

您可能正在添加未绑定this的新方法。

检查您是否正在编写这样的方法:

myMethod(){
  //Code
}

,然后将其更改为:

myMethod = () => {
  //Code
}

编辑:就像@ Li357所说,这些被称为箭头函数。箭头函数不会自动将此绑定,因此会收到周围类的this。在您的情况下,当您要访问该类的属性时,它将解决您的问题,但您可能需要阅读有关它以及JS类中绑定的工作方式的信息。

另一个选择是编写function.bind(),但是任何一种方法都应该起作用。