我有一个组件,具有以下所述的render
和onPress
方法...
onCardPressed(event) {
console.log(this.props);
const { data } = this.props;
console.log(event, data);
}
render() {
const { data } = this.props;
return (
<TouchableOpacity
onPress={this.onCardPressed}
>
<Container style={{ elevation: 5 }}>
<SectionTitle>
This is a
{` ${data.city} `}
card
</SectionTitle>
</Container>
</TouchableOpacity>
);
}
在此示例中,卡将正确显示This is a London card
,但是在onPress方法中,this.props
返回undefined
。
如何访问this.props
对象以进行评估?
答案 0 :(得分:2)
您可以通过两种方式解决此问题。支持将这些行添加到构造函数的观点是,每个类的实例仅创建一次新的绑定函数。您也可以使用
onPress={this.onCardPressed.bind(this)}
或(ES6):
onPress={() => this.onCardPressed()}