[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 也会是重定向后的路径。

相关推荐
wjcroom1 分钟前
融释涡旋理论-对狭义相对论和洛伦兹变换的兼容
开发语言·前端
2601_955354464 分钟前
SEO新手如何快速入门学习
前端·学习·搜索引擎
小和尚敲木头4 分钟前
router.push(‘/‘)跳转不触发重定向
开发语言·前端·javascript
misty youth5 分钟前
提示词合集【自用】
开发语言·前端·ai编程
zzginfo6 分钟前
ES6 中的 “?.” 可选链运算符用法
前端·ecmascript·es6
战族狼魂9 分钟前
Claude Code 源码泄露事件
前端·npm·node.js
We་ct12 分钟前
LeetCode 67. 二进制求和:详细题解+代码拆解
前端·数据结构·算法·leetcode·typescript
还是大剑师兰特12 分钟前
为什么要用 import.meta.glob 加载 SVG 图标库
开发语言·前端·javascript
渣渣xiong13 分钟前
《从零开始:前端转型AI agent直到就业第三天》
前端·ai编程