反应导航自定义标题

时间:2018-06-30 10:38:21

标签: react-native react-navigation react-native-ios

我正在尝试使用类似这样的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”)

我在做什么错,我该如何解决?

1 个答案:

答案 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