【React Native】路由和导航

  • RN 中的路由是通过 React Navigation 组件来完成的

Stack

  • 路由导航
  • RN 中默认没有类似浏览器的 history 对象
  • 在 RN 中路由跳转之前,需要先将路由声明在 Stack 中
  • <Stack.Navigator initialRouteName='Details'> <Stack.Screen name='Details' /> </Stack.Navigator>
  • navigation.navigate('Details')
  • Stack.Navigator 作用于整个导航(包含多个屏幕)
    • initialRouteName 初始化路由,即默认加载的路由
    • headerMode 声明屏幕头部信息
    • screenOptions
  • Stack.Screen 仅仅作用于当前屏幕
    • options

ButtomTab

  • 底部选项卡导航
  • 支持设置导航icon图标

Drawer

  • 抽屉式路由导航
  • 支持设置导航icon图标

MaterialTopTab

  • 支持手动滑动效果的选项卡导航

路由导航嵌套

  • 在一个导航的内部,渲染另一个导航

路由传参

  • 传递参数:navigation.navigate('路由名称', { KEY: 123 })
  • 接收参数
    • 类组件:this.props.route.params.KEY
    • 函数组件:route.params.KEY
相关推荐
weedsfly16 小时前
还在用 Axios?你可能需要重新理解 XHR 与 Fetch
前端·javascript·面试
CoderWeen16 小时前
从零实现一个 Vue3 流程图编辑器:节点拖拽、贝塞尔连线与框选
前端·javascript
光影少年16 小时前
HashRouter 和 BrowserRouter 区别、底层原理、部署差异
前端·react.js·nestjs
To_OC1 天前
LC 128 最长连续序列:别上来就排序,O (n) 解法才是这题的灵魂
javascript·算法·leetcode
kyriewen1 天前
我用 50 行代码重写了 React Router 核心,终于搞懂了前端路由原理
前端·javascript·react.js
Asize1 天前
HTML5 Canvas 基础:从按帧动画到 ECharts 数据可视化
前端·javascript·canvas
默_笙1 天前
🎄 后端给我一堆扁平数据,我 10 行代码把它变成了树
前端·javascript
前端Hardy1 天前
又一个 AI 神器火了!
前端·javascript·后端
PBitW1 天前
GPT训练我的第二天,我表示不过如此!!!😕😕😕
前端·javascript·面试
kyriewen1 天前
白宫直接给 OpenAI 下了限制令,GPT-5.6 不能随便放出来了
前端·javascript·面试