我想从一个屏幕导航到另一个屏幕,但是我未定义对象(评估'this.props.navigation.navigate')]]

问题描述 投票:0回答:1

我想从导航抽屉中的一个屏幕导航到另一个屏幕,但是出现错误

类型错误:未定义不是对象(正在评估'this.props.navigation.navigate')] >>

不知道为什么?

这是我的代码:

import React, { useState } from 'react';
import { View } from 'react-native';
import { Drawer, Appbar, Divider } from 'react-native-paper';
import style from './menu.style';
import popularposts from './popularposts';

export default Menu = ({onMenuToggle, options, navigation}) => {
    const [active, setActive] = useState('home');
    const {navigate} = this.props.navigation;
    return (
       <View style={style.container}>
       <Appbar.Header>
            <Appbar.Content></Appbar.Content>
            <Appbar.Action icon="close" onPress={onMenuToggle} />
        </Appbar.Header>
            <Drawer.Section>
             <Drawer.Item
                label="Popular Post"
                active={active === 'first'}
                onPress={() => navigate('popularposts')}
                />
                <Drawer.Item
                label="Important Dates/ Events"
                active={active === 'second'}
                onPress={() => { setActive('second'); }}
                />
                <Divider />
                <Drawer.Item
                label="SIGN OUT"
                active={active === 'fourth'}
                onPress={() => { setActive('fourth'); }}
                />
            </Drawer.Section>
       </View>
    )
}

我想从导航抽屉中的一个屏幕导航到另一个屏幕,但出现错误类型错误:undefined不是一个对象(评估'this.props.navigation.navigate')不知道为什么? ...

navigation undefined typeerror drawer react-native-paper
1个回答
0
投票

使用

const {navigate} = navigation;
© www.soinside.com 2019 - 2024. All rights reserved.