位置: IT常识 - 正文

记录vue-router跳转页面空白问题(vue-router跳转)

编辑:rootadmin
记录vue-router跳转页面空白问题

推荐整理分享记录vue-router跳转页面空白问题(vue-router跳转),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue$router,vuerouter跳转原理,vue route跳转,vuerouter跳转原理,vue的router跳转,vuerouter跳转原理,vue的router跳转,vuerouter跳转原理,内容如对您有帮助,希望把文章链接给更多的朋友!

vue- router里踩坑太多,全记录在这里,持续更新

1.父组件中要配置路由出口 RouterView<template> <div class="main"> <router-view></router-view> </div></template>2.检查路由表配置子路由路径 不要加 /routes配置项名称 不要写成 routeexport default new Router({ routes: [ // 1.这里不要写成route,注意是复数! { path: '/', name: 'HelloWorld', component: HelloWorld }, path: '/hi', component: Hi, children: [ // 2.子路由路径 不要加 / {path: '/hi2', component: Hi2}, // 错误写法 {path: 'hi3', component: Hi3}。// 正确写法 ] } ]})

component配置项

component配置项名称 不要写成 components中间路由跳转重定向,也要配置 component

layout 这个路由跳转后重定向到 ‘/user/manage’,虽然这个路由被重定向,但是组件也要注册,否则它的子组件 userManage 无法挂载。

错误写法:

{ path: '/user', name: 'user', redirect: '/user/manage', // 此路由跳转后重定向到 '/user/manage' children: [ { path: '/user/manage', name: 'userManage', component: () => import('@/views/user-manage'), } }记录vue-router跳转页面空白问题(vue-router跳转)

正确写法:

{ path: '/user', name: 'user', component: () => import('@/views/layout'), // 虽然这个路由被重定向,但是不要忘记 注册组件 redirect: '/user/manage', // 此路由跳转后重定向到 '/user/manage' children: [ { path: '/user/manage', name: 'userManage', component: () => import('@/views/user-manage'), } }3. 使用 transition组件后页面空白确保路由组件中只有一个根节点

虽然 Vue3的 template 中可以使用多个根节点,但是<transition>中的组件渲染无法设置动画的非元素根节点,换句话,<transition>中的组件中只能有一个根节点。 多个根节点会导致 过渡无法生效,组件无法切换就出现了空白页。

<template><div>A1</div><div>A1</div></template><template><div> <div>A1</div> <div>A1</div> </div></template>

注意:注释标签也是节点,例如以下属于多个根节点

<template><!-- 注释 --><div> <div>A2</div> <div>A2</div></div></template>component组件添加key值

于Vue机制的原因,为了性能会使用同一个元素。也就是说你切换时并不会更换掉整个元素,而是替换掉该元素中的内容的值,以此来切换,所以在这里需要添加key。

为了保证key的唯一性,可以使用route的path来作为key。

<router-view v-slot="{ Component,route }"> <transition name="fade" mode="out-in"> <component :is="Component" :key="route.path"/> </transition></router-view>添加动态路由后页面空白

使用 addRoutes 动态添加路由跳转后页面刷新空白

原因:(动态)异步路由添加,执行addRoutes是需要时间的,刚刚addRoutes()就执行next()立刻访问被添加的路由,然而此时addRoutes()没有执行结束,因而找不到刚刚被添加的路由导致白屏。

解决方法:使用 next({…to}),从新访问一次路由 (结束当前导航,执行新的导航,再次执行beforeEach回调,直到 {…to}路径找到为止,才执行next()

// 全局 前置守卫router.beforeEach(async(to, from, next) => { document.title = getPageTitle(to.meta.title) const hasToken = getToken() if (hasToken) { if (to.path === '/login') { next({ path: '/' }) } else { const hasGetUserInfo = store.getters.name if (hasGetUserInfo) { next() } else { try { await store.dispatch('user/getInfo') // next(path) 中断当前导航,执行新的导航 // 如果 addRoutes 并未完成,路由守卫会一层一层的执行,直到 addRoutes 完成,找到对应的路由才会放行 next({ ...to, replace: true }) // 正确写法 // next() // 错误写法 } catch (error) { await store.dispatch('user/resetToken') Message.error(error || 'Has Error') next(`/login?redirect=${to.path}`) NProgress.done() } } } } else { ...})其他

如果以上操作排查不出原因,可能是组件自身无法渲染,与路由切换无关,不要注册路由组件,直接开一个页面渲染该组件,再排查原因

本文链接地址:https://www.jiuchutong.com/zhishi/285092.html 转载请保留说明!

上一篇:【NLP相关】AI绘画api集合(nlp图)

下一篇:西孟加拉邦的双角犀鸟,印度 (© Debapratim Saha/Minden Pictures)(什么是西孟加拉邦首府)

  • 闲鱼退货运费谁承担(闲鱼退货运费谁出钱)

    闲鱼退货运费谁承担(闲鱼退货运费谁出钱)

  • 抖音绑卡怎么解绑(抖音绑卡怎么解除?)

    抖音绑卡怎么解绑(抖音绑卡怎么解除?)

  • 手机拍照原图怎么设置(手机拍照原图怎么设置尺寸)

    手机拍照原图怎么设置(手机拍照原图怎么设置尺寸)

  • 支付宝为什么总是无法定位(支付宝为什么总是限制支付)

    支付宝为什么总是无法定位(支付宝为什么总是限制支付)

  • 微信响三声对方忙线中(微信响了三声对方忙是挂掉了吗?)

    微信响三声对方忙线中(微信响了三声对方忙是挂掉了吗?)

  • qq群直播上课能看见学生吗(qq群直播上课能看见在线时长嘛)

    qq群直播上课能看见学生吗(qq群直播上课能看见在线时长嘛)

  • 保存自动恢复信息时间间隔是什么意思(保存自动恢复信息的软件)

    保存自动恢复信息时间间隔是什么意思(保存自动恢复信息的软件)

  • 微信截屏快捷键什么(excel微信截屏快捷键)

    微信截屏快捷键什么(excel微信截屏快捷键)

  • 视频vid什么意思(手机视频vid是什么意思)

    视频vid什么意思(手机视频vid是什么意思)

  • 朋友圈打开一条横线什么意思(朋友圈打开一条横线是不是被删除了)

    朋友圈打开一条横线什么意思(朋友圈打开一条横线是不是被删除了)

  • 微信公众号是自媒体吗(微信公众号是自己的微信号吗)

    微信公众号是自媒体吗(微信公众号是自己的微信号吗)

  • 电脑128g内存够用吗(电脑128g存储够用吗)

    电脑128g内存够用吗(电脑128g存储够用吗)

  • word页面高度和宽度怎么设置(word页面高度和宽度在哪设置)

    word页面高度和宽度怎么设置(word页面高度和宽度在哪设置)

  • vivos5的语音助手叫什么名字(vivos5语音助手怎么让蔡徐坤回复)

    vivos5的语音助手叫什么名字(vivos5语音助手怎么让蔡徐坤回复)

  • 华为添加桌面插件在哪(华为如何添加桌面插件)

    华为添加桌面插件在哪(华为如何添加桌面插件)

  • switch关机可以充电吗(switch关机可以充电开机不充电)

    switch关机可以充电吗(switch关机可以充电开机不充电)

  • 固态硬盘插主板哪个地方(固态硬盘插主板哪个口主板有六个口)

    固态硬盘插主板哪个地方(固态硬盘插主板哪个口主板有六个口)

  • 开机键坏了教你如何开机(开机键坏了教你关机)

    开机键坏了教你如何开机(开机键坏了教你关机)

  • 电脑微信可以开视频吗(电脑微信可以开腾讯会议吗)

    电脑微信可以开视频吗(电脑微信可以开腾讯会议吗)

  • 如何给页码插全角空格(页码如何全部设置)

    如何给页码插全角空格(页码如何全部设置)

  • 联通hd什么意思(联通有个hd)

    联通hd什么意思(联通有个hd)

  • 微信腾讯服务怎么修改(微信腾讯服务怎么开通)

    微信腾讯服务怎么修改(微信腾讯服务怎么开通)

  • ipad air3支持快充吗(ipadair3可以用快充充电吗)

    ipad air3支持快充吗(ipadair3可以用快充充电吗)

  • 快手怎么制作文字视频(快手怎么制作文字视频教程)

    快手怎么制作文字视频(快手怎么制作文字视频教程)

  • 华为p30pro支持人脸识别吗(华为p30pro有没有智能机器人)

    华为p30pro支持人脸识别吗(华为p30pro有没有智能机器人)

  • 轻量级网络MobileNeXt--改进MobileNet v2的逆残差结构(轻量级网络设计)

    轻量级网络MobileNeXt--改进MobileNet v2的逆残差结构(轻量级网络设计)

  • 财务软件开票税率
  • 增值税核算应设置什么
  • 租金营改增
  • 负数发票报税不让填怎么办
  • 遗失的支票怎样避免经济损失
  • 预算内往来款
  • 报销差旅费需要交进项税吗
  • 出售房屋缴纳的印花税
  • 在建工程转固定资产的条件
  • 房屋租赁合同印花税租赁双方各自要交多少
  • 股东打入公户的钱怎么做账
  • 购买办公用品账务处理
  • 将汽车奖励给员工财务如何处理?
  • 劳务费开发票还要代扣代缴吗?
  • 风险纳税人不允许领用发票
  • 电话宽带是什么意思
  • 代建项目增值税税率
  • 分期收款什么时候交税
  • 经办人需要承担风险盘锦交通运输破坏营商环境
  • 两年利润都为负数,如何计算完成率
  • 进项税额转出再转入
  • 向其他股东购买股权
  • 计提减值的固定资产处置
  • 卖房的税种
  • 出口退免税的类型
  • 运输公司造成的损耗
  • Win11 Dev Build 22000.65开发预览版推送(附更新修复已知问题汇总)
  • 如何在excel中自动筛选
  • 如何进行降压治疗
  • 现金流量表的内涵及其编制基础
  • 企业在进行会计核算时选择一种不多计资产
  • 个体工商户与其经营者构成共同侵权吗
  • 建筑业 分包
  • 笔记本电脑bios设置
  • 企业固定资产出售账务处理
  • 解决本地浏览器的方法
  • vue程序运行过程
  • 对个别报表中处置收益的归属期间进行调整
  • 业务招待费的账务处理金额
  • php自定义表单
  • 划水划水划水表情包
  • vue计算属性和监听属性的区别
  • eccv论文下载
  • php防止用户重度登录
  • php 输出
  • uniapp微信小程序兼容
  • 平行结转的约当约当怎么计算
  • mysql百万级数据分页查询优化
  • 文化传媒公司介绍
  • 出租车发票可以重新打印吗
  • 银行贷款可以置换险资吗
  • 餐饮服务规定
  • 职工短期薪酬包括哪些
  • 劳务分包劳务费付款比例
  • 辞退补偿金的标准
  • 投资性房地产转为存货
  • 车险代买的出了事故怎么办
  • 公司因担保产生损失
  • 固定资产盘亏造成的损失计入什么科目
  • 财务费用为什么是向债权人支付的现金流量
  • 对公收费明细入账是手续费吗
  • 备用金怎么计入明细账
  • 房产税开征利好那些概念股 新闻
  • 营业收入怎么确定
  • 工会经费按实际发放交还是以计提的
  • 所得税费用如何计提
  • mssql insert into 和insert into select性能比较
  • windows2008防火墙允许远程桌面
  • sel 日志
  • .exe是什么软件
  • win7guest账户有密码吗
  • win8搜索不到文件
  • bootstrap怎么用
  • virtualbox no bootable medium
  • jquery获取file文件
  • 工商跟税务的区别
  • 信息报送条例
  • 云南省国家税务总局
  • 如何查询有没有交医保费用
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设