RN Navigation vs Vue Router 的架构对比

@[toc]

很多团队同时做 Web 和 RN,经常会问:

"能不能把 Web 的路由思想用到 RN?"

答案是:能,但不能照抄。

一、本质差异先搞清楚

维度 Vue Router RN Navigation
渲染模型 URL 驱动 Stack 驱动
页面状态 可刷新 内存状态
回退机制 浏览器 原生导航栈

二、Vue Router:声明式路由

ts 复制代码
{
  path: '/user/:id',
  component: User
}

特点:

  • URL 即状态
  • 刷新可恢复
  • SEO 友好
js 复制代码
navigation.navigate('User', { id: 1 })

特点:

  • 栈结构
  • 页面常驻内存
  • 强依赖生命周期

四、架构设计的根本不同

Vue

  • 路由是"状态来源"
  • 页面是"状态映射"

RN

  • 页面是"状态容器"
  • 导航是"页面切换器"

五、权限与导航的差异

Vue:

  • 全局守卫
  • URL 级别权限

RN:

  • 页面跳转前校验
  • 或导航栈拦截
  • Vue:Layout 是组件
  • RN:Navigator 本身就是 Layout
txt 复制代码
TabNavigator
 ├── StackNavigator
 │    ├── Screen

七、如何统一思维模型?

建议团队统一的是:

  • "页面分层思想"
  • "权限集中处理"
  • "导航声明化"

而不是 API 本身。

八、总结一句话

Vue Router 管的是"URL 到页面"

RN Navigation 管的是"页面到页面"

理解这个差异,跨端架构设计就不会拧巴。

相关推荐
敲敲敲敲暴你脑袋21 小时前
写个添加注释的vscode插件
javascript·typescript·visual studio code
SuperEugene1 天前
后台权限与菜单渲染:基于路由和后端返回的几种实现方式
前端·javascript·vue.js
兆子龙1 天前
WebSocket 入门:是什么、有什么用、脚本能帮你做什么
前端·架构
csdn飘逸飘逸1 天前
Autojs基础-全局函数与变量(globals)
javascript
KKKK1 天前
手写Promise,从测试用例的角度理解
javascript
青青家的小灰灰1 天前
迈向全栈新时代:SSR/SSG 原理、Next.js 架构与 React Server Components (RSC) 实战
前端·javascript·react.js
SuperEugene1 天前
弹窗与抽屉组件封装:如何做一个全局可控的 Dialog 服务
前端·javascript·vue.js
青青家的小灰灰1 天前
透视 React 内核:Diff 算法、合成事件与并发特性的深度解析
前端·javascript·react.js
北冥有鱼1 天前
JSON或代码对比的工具-vue
vue.js
SuperEugene1 天前
组合式函数 、 Hooks(Vue2 mixin 、 Vue3 composables)的实战封装
前端·javascript·vue.js