Vue3 页面刷新时在 onMounted 里获取到的path 一直是 / 问题

First !! 先看原始的代码

复制代码
onMounted(() => {
   const currentPath = route.path
})

刷新页面 发现获取的 currentPath 始终是 /

这是 Vue Router 初始化时序问题:

  • 页面刚刷新时,Vue 还没完成路由解析
  • onMounted 执行得太早,路由还没准备好
  • 此时路由默认值就是 /,所以永远拿到根路径

正确的获取当前路由地址的方法

复制代码
import { useRouter, useRoute } from 'vue-router'

const router = useRouter()
const route = useRoute()

onMounted(async () => {
  await router.isReady();
  const currentPath = route.path
 }
)

修改成这样, 每次获取到的路由地址就是当前页面的最新路径了.

相关推荐
变与不变8066 小时前
jQuery怎么使用
前端·javascript
神膘护体小月半6 小时前
flex 布局的 order 属性
前端·css
paopaokaka_luck7 小时前
流浪动物救助与收养系统(DeepSeek AI对话、 ECharts多维分析、救助流程衔接、领养与回访衔接、 捐赠确认与公示、志愿者协作)
java·前端·javascript·人工智能·mysql·echarts·推荐算法
仰望.7 小时前
vue 表格组件 vxe-table 树表格懒加载支持拖拽排序的详细用法
前端·javascript·vue.js·vxe-table
前端 贾公子7 小时前
vite-plugin-uni-manifest 升级指南
前端
小码哥_常7 小时前
iPhone 用户传了张 HEIC,我的前端崩了
前端
小码哥_常7 小时前
你发的原图可能暴露你家地址——聊聊图片 EXIF 隐私
前端
java1234_小锋7 小时前
【技术专题】CSS3 网页技术 - CSS3 优先级
前端·css·css3
鸿蒙开发8 小时前
共享 Schema 与 SchemaFactory
前端·后端·harmonyos
屏什么录8 小时前
录屏超过两小时就卡顿崩盘?从参数调优到代码实现,一文彻底搞定长时间录屏
前端·音视频开发