[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