首页 > 解决方案 > React Native Confusion 与导航

问题描述

任何人都可以向我解释以下情况下导航这个词的错误吗?

userByEmail(this.state.Email, navigate) // we call userByEmail ans pass email, but what does navigate do?

在这里,我知道我们是在从 screenProps 内部的 auth 导入/(解构 this.props)方法 createUser?navigation: {navigate}} 是什么,它只是导航道具吗?

 const {screenProps: {auth: {createUser}}, navigation: {navigate}} = this.props

最后这两者有什么区别

this.props.navigation.navigate('Calendar')
navigate('Calendar')

标签: javascriptreactjsreact-nativenavigation

解决方案


我不能只用你的一些代码来做。但如果navigate不是变量,这是错误的。

this.props.navigation

  • route设置时,navigation props会自动传递到已连接的屏幕。
  • 如果不直接设置路由,则通过调用factorHOC提供的 方式注入组件react-navigation

配置导航道具

  • 导航:转到另一个屏幕,找出它需要采取的行动

  • goBack - 关闭活动屏幕并返回堆栈

  • addListener - 订阅导航生命周期的更新

  • isFocused - 如果屏幕聚焦,则返回 true,否则返回 false。

  • state - 当前状态/路线

  • setParams - 更改路由的参数

  • getParam - 获取带有回退的特定参数

  • dispatch - 向路由器发送一个动作

'navigate'您要使用的 是 的道具navigation


推荐阅读