gpt4 book ai didi

javascript - React Navigation - 无法读取未定义的属性 'navigate'

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:30:44 24 4
gpt4 key购买 nike

我一直在尝试启动并运行 react navigation但是当我尝试将导航项移动到它们自己的组件中时遇到了问题。

HomeScreen.js

import React, { Component } from 'react';

import {
StyleSheet,
View,
Text
} from 'react-native';

import NavButton from '../components/NavButton'

class HomeScreen extends Component {
render() {
return (
<View style={styles.container}>
<Text>
Hello World
</Text>

<NavButton
navigate={this.props.navigator}
/>
</View>
);
}
}

const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center'
}
});


export default HomeScreen;

然后在 NavButton 组件中,我尝试导航到新屏幕。

 class NavButton extends Component {
render() {
return (
<View>
<Button
title="Go to About"
onPress={() => this.props.navigator.navigate('About')}
/>
</View>
);
}
}
export default NavButton;

但我不断收到错误消息“无法读取未定义的属性‘导航’。

这也是我的 Router.js 文件。

import React from 'react';
import {StackNavigator} from 'react-navigation';

import HomeScreen from '../screens/HomeScreen'
import AboutScreen from '../screens/AboutScreen'


export const AppNavigator = StackNavigator({
Home: {
screen: HomeScreen
},
About: {
screen: AboutScreen
}
})

最佳答案

如果您将 navigate={this.props.navigator} 重命名为 navigator={this.props.navigation},它应该可以工作,因为在 NavButton 中您调用 this.props.navigator.navigate.

关于javascript - React Navigation - 无法读取未定义的属性 'navigate',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42793844/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com