react-native - 如何修复 React Native Navigator 不起作用
问题描述
我正在使用 react-native-navigator
class LinkButton extends React.Component {
render() {
return (
<TouchableOpacity activeOpacity={.7} style={styles.btn} onPress={this.props.pageNavi}>
<Image source={this.props.url} style={styles.btnImg}/>
<Text
style={{fontSize: width(2.6)}}
>
{this.props.text}
</Text>
</TouchableOpacity>
);
}
}
class Footer extends React.Component {
render() {
return(
<View style={styles.container}>
<LinkButton
url={require('../../assets/img/footer/ayuda.png')}
text="Ayuda"
pageNavi={() => this.props.navigation.navigate("Servicio") }
/>
</View>
);
}
但是在pageNavi之后,我得到一个错误“未定义不是一个对象(评估'_this.props.navigation.navigate')”在这里我想知道这是什么问题。谢谢
解决方案
您需要将导航道具传递给要使用导航的所有组件。导航。
例如,在您的主屏幕中,它会呈现 Footer 组件。
<Footer navigation={this.props.navigation} />
这将使 this.props.navigation 在 Footer 组件中可用
推荐阅读
- java - 将按钮单击值从活动发送到非活动
- angular - ng2-smart-table 如何有编辑弹出窗口
- jquery - Bootstrap Popover 性能
- c# - 当我从 tcp 客户端接收数据时,我无法从 ViewModels 的 xaml 页面进行更改
- reactjs - 在 React 中使用分组行向表添加虚拟化
- npm - ASP.Net Core 2.1:如何将 Gulp 与 npm 一起用于项目依赖项
- php - 这是PHP中的常量吗?
- ruby-on-rails - rails 服务器不工作 WSL 不安全的世界
- regex - ReEx for Google Analytics Goal - 仅当另一个短语不存在时才匹配一个短语
- eclipse - Ceylon 运行配置:找不到项目