我想从一个屏幕导航到另一个屏幕,但我有一个未定义的对象(评估';this.props.navigation.navigate';)
我想从一个屏幕导航到另一个屏幕,但我有一个错误 类型错误:undefined不是对象(计算'this.props.navigation.navigate') 不知道为什么 这是我的密码:我想从一个屏幕导航到另一个屏幕,但我有一个未定义的对象(评估';this.props.navigation.navigate';),navigation,undefined,typeerror,drawer,react-native-paper,Navigation,Undefined,Typeerror,Drawer,React Native Paper,我想从一个屏幕导航到另一个屏幕,但我有一个错误 类型错误:undefined不是对象(计算'this.props.navigation.navigate') 不知道为什么 这是我的密码: import React, { useState } from 'react'; import { View } from 'react-native'; import { Drawer, Appbar, Divider } from 'react-native-paper'; import style fro
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>
)
}
import React,{useState}来自“React”;
从“react native”导入{View};
从“react National paper”导入{Drawer,Appbar,Divider};
从“./menu.style”导入样式;
从“/popularposts”导入popularposts;
导出默认菜单=({onMenuToggle,options,navigation})=>{
const[active,setActive]=useState('home');
const{navigate}=this.props.navigation;
返回(
导航('popularposts')}
/>
{setActive('second');}
/>
{setActive('fourth');}
/>
)
}
使用
而不是
const {navigate} = this.props.navigation;
我使用的是navigation.navigate(‘屏幕名称’),它工作正常
const {navigate} = this.props.navigation;