我正在尝试使用类似这样的react-navigation自定义标头
static navigationOptions = {
header: <EventHeader
subscribestatus={this.props.navigation.getParam('status')}
confirmation={this.props.navigation.getParam('confirmation')}
deleteSubscribe={this.deleteSubscribe}
joinEvent={this.joinEvent}
onPress={()=>this.props.navigation.goBack()}
eventname={this.props.navigation.getParam('title')}
/>
};
此标头使您看到的上一个屏幕参数正确,但即时通讯 未定义不是对象(正在评估“ this.props.navigation”)
我在做什么错,我该如何解决?
答案 0 :(得分:1)
我希望您找到了解决方案,但对于可能会来这里的其他人:
navigationOptions
可以是function
,它将通过navigator
作为第一个参数并可以返回一个对象。
所以你可以这样写:
static navigationOptions = (navigator) => {
return {
header: (
<EventHeader
subscribestatus={navigator.navigation.getParam('status')}
confirmation={navigator.navigation.getParam('confirmation')}
//deleteSubscribe={this.deleteSubscribe}
//joinEvent={this.joinEvent}
onPress={()=>navigator.navigation.goBack()}
eventname={navigator.navigation.getParam('title')}
/>
)
}
}
不幸的是,您将无权访问this.deleteSubscribe或this.joinEvent