`uni-app`页面路由为框架统一管理,开发者需要在[pages.json](https://uniapp.dcloud.io/collocation/pages?id=pages)里配置每个路由页面的路径及页面样式。类似小程序在app.json中配置页面路由一样。所以`uni-app`的路由用法与`Vue Router`不同,如仍希望采用`Vue Router`方式管理路由,可在插件市场搜索[Vue-Router](https://ext.dcloud.net.cn/search?q=vue-router)。
### [路由跳转](https://uniapp.dcloud.io/frame?id=%e8%b7%af%e7%94%b1%e8%b7%b3%e8%bd%ac)
`uni-app`有两种页面路由跳转方式:使用[navigator](https://uniapp.dcloud.io/component/navigator)组件跳转、调用[API](https://uniapp.dcloud.io/api/router)跳转。
### [页面栈](https://uniapp.dcloud.io/frame?id=%e9%a1%b5%e9%9d%a2%e6%a0%88)
框架以栈的形式管理当前所有页面, 当发生路由切换的时候,页面栈的表现如下:
| 路由方式 | 页面栈表现 | 触发时机 |
| --- | --- | --- |
| 初始化 | 新页面入栈 | uni-app 打开的第一个页面 |
| 打开新页面 | 新页面入栈 | 调用 API [uni.navigateTo](https://uniapp.dcloud.io/api/router?id=navigateto) 、使用组件 [](https://uniapp.dcloud.io/component/navigator?id=navigator) |
| 页面重定向 | 当前页面出栈,新页面入栈 | 调用 API [uni.redirectTo](https://uniapp.dcloud.io/api/router?id=redirectto) 、使用组件 [](https://uniapp.dcloud.io/component/navigator?id=navigator) |
| 页面返回 | 页面不断出栈,直到目标返回页 | 调用 API [uni.navigateBack](https://uniapp.dcloud.io/api/router?id=navigateback) 、使用组件 [](https://uniapp.dcloud.io/component/navigator?id=navigator) 、用户按左上角返回按钮、安卓用户点击物理back按键 |
| Tab 切换 | 页面全部出栈,只留下新的 Tab 页面 | 调用 API [uni.switchTab](https://uniapp.dcloud.io/api/router?id=switchtab) 、使用组件 [](https://uniapp.dcloud.io/component/navigator?id=navigator) 、用户切换 Tab |
| 重加载 | 页面全部出栈,只留下新的页面 | 调用 API [uni.reLaunch](https://uniapp.dcloud.io/api/router?id=relaunch) 、使用组件 [](https://uniapp.dcloud.io/component/navigator?id=navigator) |