首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >React导航5:使用导航传递参数

React导航5:使用导航传递参数
EN

Stack Overflow用户
提问于 2021-01-08 02:01:42
回答 2查看 63关注 0票数 0

我在react navigation5中使用类组件,我有两个类:

DrawerComponent.js类

代码语言:javascript
复制
export default class DrawerContent extends Component{   
constructor(props){
 super(props);    
}
render(){
 return(
    <View style={{flex:1}}>
        <DrawerContentScrollView {...this.props}>            
                <Drawer.Section style={styles.drawerSection}>
                    {
                          <DrawerItem 
                                icon={({color,size}) => (
                                 <Icon 
                                 name=""
                                 color={color}
                                 size={size}
                                 />
                                )}
                                label={menu.localizedTitle}
                                onPress = {() =>**{this.props.navigation.navigate("RecordList",{body :'abc' }**)}}/>)
        </Drawer.Section>             
            </View>
        </DrawerContentScrollView>         
    </View>
)}}

现在,如果我必须在另一个类中访问body的值,我该怎么做呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-01-08 02:06:45

在您的RecordList组件中,可以使用route访问参数

代码语言:javascript
复制
const RecordList = ({navigation, route})=>{
  const {body} = route.params;
  console.log(body)
}

在基于类的组件中:

代码语言:javascript
复制
class RecordList extends Component{
  
  render(){
    const {body} = this.props.route.params;
    console.log(body)
    return <View><Text>{body}</Text></View>
  }
}
票数 1
EN

Stack Overflow用户

发布于 2021-01-18 18:36:15

我在drawerNavigator中使用stackNavigator,所以我将不得不使用嵌套导航:

代码语言:javascript
复制
 this.props.navigation.navigate('RecordList', {screen:'Home',params :{ title: "Home"}})

检索可以完全像上面Ketan的答案中那样完成。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65617657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档