[Vue]防止路由重复跳转

[Vue]防止路由重复跳转

js 复制代码
// 获取当前路由的原始路径(包括重定向的处理)
const currentPath = this.$route.redirectedFrom || this.$route.path;

// 判断目标路径是否与当前路径相同
if (currentPath !== item.url) {
  this.$router.push({ path: item.url });
} else {
  console.log('目标页面与当前页面相同,不进行跳转');
}
  • this.$route.redirectedFrom

重定向的来源

  • this.$route.path

this.$route.path:这是当前路由的路径(不包括查询参数和哈希)。它表示的是当前页面的实际路径,比如 /strategy/security-policy。当路由发生重定向时,this.$route.path 会反映最终的目标路径(即重定向后的路径)

  • this.$route.fullPath

这是当前路由的完整路径,包含路径、查询参数和哈希。例如,/strategy/security-policy?id=123#section1。如果路由发生了重定向,fullPath 也会是重定向后的路径。

相关推荐
牛奶11 分钟前
JS随笔:浏览器 API(DOM 与 BOM)
前端·javascript·面试
用泥种荷花19 分钟前
【LangChain.js学习】 会话记忆(临时/长期)全解析
前端
慢慢长大的孩子22 分钟前
原生Android开发与JS桥开发对比分析
前端·后端
爱勇宝25 分钟前
2026年前端生存规划:只会写页面的人,正在被悄悄淘汰
前端·后端·架构
牛奶26 分钟前
JS随笔:异步编程与事件循环
前端·javascript·面试
牛奶26 分钟前
JS随笔:数据结构与集合
前端·javascript·面试
小陆猿36 分钟前
股票实时行情Echarts动态图表
前端·javascript
Dilettante2581 小时前
React Server Components 全链路解析:Next.js 构建产物、导航流程与 Payload 格式
前端·next.js
前端付豪1 小时前
Nest 项目小实践之注册登陆
前端·node.js·nestjs
用户9121917620611 小时前
日本股票K线图生成实战:基于API的完整对接方案
前端