vantUI(Tabbar标签页)浏览器返回上一页的失效问题

在开发中遇到这样一个问题,由页面1切换到页面2,再点击浏览器的回退,无法回退到页面1。

开始以为是路由配置的有问题,但是子页面可以正常回退,因为replace只是替换路由,而不会往history栈中记录路由,所以当切换到页面2的时候,历史的路由里已经没有页面1了,所以无法回去。

原代码如下:

html 复制代码
<van-tabbar route>
  <van-tabbar-item replace  to="/it" icon="todo-list-o">页面1</van-tabbar-item>
  <van-tabbar-item replace  to="/al" icon="bulb-o">页面2</van-tabbar-item>
</van-tabbar>

修改成如下代码即可正常回退。

html 复制代码
<van-tabbar route>
  <van-tabbar-item  to="/it" icon="todo-list-o">页面1</van-tabbar-item>
  <van-tabbar-item  to="/al" icon="bulb-o">页面2</van-tabbar-item>
</van-tabbar>

补充知识:

this.router.to, this.router.replace

  • router.push 方法会向 history 栈添加一个新的记录,所以,当用户点击浏览器后退按钮时,会回到之前的 URL。
  • router.replace 在导航时不会向 history 添加新记录,而是取代了当前的条目

希望可以帮到你~

相关推荐
格子软件1 小时前
2026年GEO优化系统源码级状态机与多模型调度拆解
java·前端·vue.js·人工智能·vue·geo
HUMHSX2 小时前
Vue 项目启动全流程解析:从入口文件到全局指令注册与页面渲染
前端·javascript·vue.js
有颜有货2 小时前
PMC生产排产的4种算法,一次讲清
java·服务器·前端
小虎牙0072 小时前
Android kotlin图片库Coil源码详解
android·前端
随风一样自由2 小时前
【前端领域】前端开发核心应用场景与落地实践
前端·前端框架
an317423 小时前
弹窗数据流设计的两种高阶架构实践
前端·vue.js·架构
谢尔登3 小时前
【React】 状态管理方案
前端·react.js·前端框架
用户2136610035723 小时前
Vue商品详情与放大镜组件
前端·javascript
半个落月3 小时前
从Tapas小Demo理清localStorage、事件与this
前端·javascript
李明卫杭州3 小时前
Vue2 中 v-model 处理不同数据结构的技巧
前端·javascript·vue.js