Vue.js 路由器在vuejs中未定义
我创建了一个vue js应用程序。其中我有路由的main index.js文件,我为其他视图创建了不同的路由文件,我的所有子文件都在main index.js路由文件中扩展 index.js(主路由文件) 下面我将在该文件中导入我的子路由 从“/test1”导入test1 从“./test”导入测试 我的子路由文件test1Vue.js 路由器在vuejs中未定义,vue.js,routes,vue-router,Vue.js,Routes,Vue Router,我创建了一个vue js应用程序。其中我有路由的main index.js文件,我为其他视图创建了不同的路由文件,我的所有子文件都在main index.js路由文件中扩展 index.js(主路由文件) 下面我将在该文件中导入我的子路由 从“/test1”导入test1 从“./test”导入测试 我的子路由文件test1 export default [{ path: '/roles', component: Layout2, children: [{ path: '/'
export default [{
path: '/roles',
component: Layout2,
children: [{
path: '/',
component: () => import('@/views/test/test1'),
meta: {
auth: true
},
beforeEnter(to, from, next) {
if(checkPermission("readUser")){
router.push({
name: 'unauthorized'
})
}
}
}
}]
}]
现在的问题是,我试图使用before-route在url中推送
未经授权的,但它给了我错误,比如路由器未定义。如何解决此问题?我认为您应该首先创建路由器实例,然后将其导出
export const router = new VueRouter(routes)
const routes = {
path: '/roles',
component: Layout2,
... etc.
}
然后将路由器导入主js文件。是的,它在我的基本路由文件中。它不是那样工作的。如果在文件中使用任何变量、函数等,则需要将其导入到同一文件中。看看我的答案。这可能会有帮助。