我正在使用React Native开发一个应用程序,但是在访问我提供给我制作的组件的道具时遇到了麻烦。
如果我在构造函数中执行console.log(this.props)
,则可以在控制台中看到所需的道具显示,但是,如果将其放在任何其他方法中,则它将打印未定义的内容。我该如何访问从构造方法之外明显发送到组件的道具?
答案 0 :(得分:2)
您可能正在添加未绑定this
的新方法。
检查您是否正在编写这样的方法:
myMethod(){
//Code
}
,然后将其更改为:
myMethod = () => {
//Code
}
编辑:就像@ Li357所说,这些被称为箭头函数。箭头函数不会自动将此绑定,因此会收到周围类的this。在您的情况下,当您要访问该类的属性时,它将解决您的问题,但您可能需要阅读有关它以及JS类中绑定的工作方式的信息。
另一个选择是编写function.bind(),但是任何一种方法都应该起作用。