reactjs - 在反应导航 v5 中传递道具的问题
问题描述
我想创建一个自定义标题,我将制作一个箭头图标,但这个箭头图标不会让用户回到上一页,我想控制它以确定它应该带回哪个屏幕我有三个屏幕Home
,screen 1
和screen 2
我为屏幕 2 创建了一个带有箭头图标的自定义标题,我希望它在点击后将用户带回主屏幕。
这是标题代码:
const Header =(props)=>{
const {navigation}=props;
return(
<View>
<Icon onPress={()=>navigation.navigate('props.destination')} />
</View>
这是屏幕2的代码:
import {Header} from './';
const Screen2 = (props) => {
const {navigation}=props;
return (
<Fragment>
<Header destination='Home' navigation={navigation} />
<View style={styles.container}>
<Text>Screen2</Text>
</View>
</Fragment>
)
}
这是我得到的错误,我该如何解决?
解决方案
您实际上希望将存储在props.destination
('Home'
在这种情况下) 的字符串传递给不是有效屏幕名称navigate()
的字符串文字:'props.destination'
<Icon onPress={()=>navigation.navigate(props.destination)} />
推荐阅读
- javascript - 从图像转换为 Base64 字符串在 Javascript 或 Typescript 中响应非常慢
- java - XML配置中的spring log4j无法创建日志信息文件
- java - 将对象映射到多个属性 (Java)
- xamarin - 有什么方法可以禁用 Xamarin.Plugin.Calendar 中的某些先前或特定日期
- android - 应用程序未配置为通过 Google Play 计费错误
- c++ - 如何在 vscode 中为程序设置默认输入
- javascript - 推送通知在实时生产服务器上不起作用
- chart.js - 使用图表颜色动态更改工具提示的背景颜色
- flutter - 如何使百分比指示器在颤动中以编程方式更改颜色?
- mysql - from_base64() 不解码回原始文本