vue-router路由报错

[Vue warn]: Error in beforeCreate hook: "TypeError: this._router.init is not a function"

[Vue warn]: Error in render: "TypeError: router.resolve is not a function"

[Vue warn]: Error in render: "TypeError: Cannot read properties of undefined (reading 'matched')"

TypeError: Cannot read properties of undefined (reading 'matched')

 这是路由的问题:

这是我原来的代码:

router/index.js:

import Vue from 'vue'
import Router from 'vue-router'

Vue.use(Router)

const router = [
  {
    path: '/home',
    name: 'home',
    meta:{name: 'home', menu:'/home'},
    component: () => import('@/components/layout/CentreMainContent.vue')
  },
  {
    path: '/login',
    meta:{name: 'login', menu:'/login', requireAuth: false},
    component: () => import('@/view/home/login/index.vue')
  },
  {
    path: '/',
    redirect:'/home',
    meta:{name: 'home-default', menu:''}
  }];

//{ familyMenu, headMenu,routerMenu}
export default router

这是有问题的:路由返回时组要返回的是  Router from 'vue-router', 而不是一个list数组。

所以需要从新对返回对象修改:

import Vue from 'vue'
import Router from 'vue-router'

Vue.use(Router)

const routers = [
  {
    path: '/home',
    name: 'home',
    meta:{name: 'home', menu:'/home'},
    component: () => import('@/components/layout/CentreMainContent.vue')
  },
  {
    path: '/login',
    meta:{name: 'login', menu:'/login', requireAuth: false},
    component: () => import('@/view/home/login/index.vue')
  },
  {
    path: '/',
    redirect:'/home',
    meta:{name: 'home-default', menu:''}
  }];

let router = new Router({
  mode: 'history',
  routes:routers
})
//{ familyMenu, headMenu,routerMenu}
export default router

猜你喜欢

转载自blog.csdn.net/qq_34484062/article/details/125262417