小白求助,用navigation时要想把headerriight的虚拟dom也变成一个导航



  • 结果在执行 navigate的时候报错,代码如下
    static navigationOptions = {
    headerRight:(
    <TouchableHighlight onPress={() => _this._reload()}>
    <Image source={require('./img/orders.png')}/>
    </TouchableHighlight>
    ) ,
    title: '酒类',
    };
    componentDidMount() {
    _this = this;
    }
    _reload() {
    navigate('Order');
    }
    执行navigate的时候总是报错undefinned,如何能使Headerright的东西也变成一个导航



  • @gorden301
    navigationOptions加上参数。
    如下
    static navigationOptions = ({navigation}) => {
    headerRight:(
    <TouchableHighlight onPress={() => {navigation.navigate('xxx',{参数})}}>
    <Image source={require('./img/orders.png')}/>
    </TouchableHighlight>
    ) ,
    }



  • @gorden301 我看到你用_this这个了,一般情况下,不用这个,除非是你需要在options里面执行当前类的函数。按照你这个思路的话,在_reload(){this.props.navigation.navigate('order')}这么去执行也可以。



  • @cloudsafe 第二种方法,我昨天自己也试了,是可以的,但是我现在想把这个headerright里的按钮封装成一个component单独的引进来,这时候就会提示navigate为定义了



  • @gorden301 你给引入的compnent传参数,navigation把它传过去,用第一种在options中把navigation引进来,然后传给compnent



  • @cloudsafe 兄弟能加个qq交流一下吗



  • @gorden301 已私信


登录后回复