Vue-demo关于子路由跳转正确不显示页面问题

原因1

点击 showpopup 跳转

  methods: {
    showPopup () {
      console.log(this.$route);
      this.$router.push('/home/popup')
    },
 

这是我的路由表配置的子路由 (本以为是没问题)

 

得到的却是这样的页面,我的路径也是对的

问题原因

原因出现在在路由表的一个小错误上

因为以'/'开头的嵌套路径会被当作根路径,所以子路由上不用加'/';在生成路由时,主路由上的path会被自动添加到子路由之前,所以子路由上的path不用在重新声明主路由上的path了. 

所以  要么写成不加斜杆的

 要么写全路径

 所以 在父级路由组件中如何去显示子路由对应的组件,要是用<router-view />   这句话很重要

 最后发现点击跳转出现了红色报错

 这个原因我在网上也找了,给出的解决办法基本都是 对路由降级 (如果有更好的办法可以留言)

在router目录下index.js文件加上

const originalPush = VueRouter.prototype.push
VueRouter.prototype.push = function push(location, onResolve, onReject) {
  if (onResolve || onReject) return originalPush.call(this, location, onResolve, onReject)
  return originalPush.call(this, location).catch(err => err)
}

 


                
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值