Vue中router-view无法显示的解决办法

2023-12-01 0 971

如果你存在:

  • 代码没报错,运行成功,但是index.js中router挂接的内容无法显示,
  • 没有犯书写错误,routes 和 component 没有写错,
  • 在浏览器中检查,App.vue中对应的 <router-view>为空

那么建议你接着看,首先,正确的结果:

//App.vue中
<template>
<div id=\”app\”>
//关键是 router-view 能否成功渲染
<router-view></router-view>
<div>
<p>
If Element is successfully added to this project, you\’ll see an
<code v-text=\”\'<el-button>\’\”></code>
below
</p>
<el-button>el-button</el-button>
</div>
</div>
</template>
<script>
export default {
name: \’app\’,
components: {
}
}
</script>
//index.js文件

import Vue from \’vue\’
import VueRouter from \’vue-router\’
import HomeView from \’../views/main/HomeView.vue\’
import Layout from \’../views/LayoutView.vue\’

Vue.use(VueRouter)

//1.这里是routes,指定路径和成员
const routes = [
{
path: \’/\’,
name: \’Layout\’,

//以下的 component(这是对的) 千万注意,不要写成 components(这是错的)
component: Layout,
children: [
{
path: \’\’,
name: \’Home\’,
component: HomeView,
meta: {
isLogin: true
}
},
{
path: \’params\’,
name: \’params\’,
component: () => import(\’../views/main/ParamsView.vue\’),
meta: {
isLogin: true
}
},
{
path: \’ad\’,
name: \’ADclassify\’,
component: () => import(\’../views/main/ADClassify.vue\’),
meta: {
isLogin: true
}
},
{
path: \’product\’,
name: \’product\’,
component: () => import(\’../views/main/ProductView.vue\’),
meta: {
isLogin: true
}
}
]
},
{
path: \’/login\’,
name: \’Login\’,
component: () => import(\’../views/LoginView.vue\’),
meta: {
isLogin: true
}
}
]
//2.这里是router,是一个VueRouter对象
const router = new VueRouter({
mode: \’history\’,
base: process.env.BASE_URL,
routes
//3.这里是routes,对应1中指定的内容
})

export default router

以上,没什么问题的话,可以看到

Vue中router-view无法显示的解决办法

App.vue中对应的 <router-view>为是有值的

后来我导入在main.js中了一个js文件

//main.js
import Vue from \’vue\’
import App from \’./App.vue\’
import router from \’./router\’
import store from \’./store\’
import \’./plugins/element.js\’
import \’./assets/css/common.css\’
//导入了这个文件,之后就看不见 router-view 渲染的内容了
// import \’./router/permission.js\’
Vue.config.productionTip = false
new Vue({
router,
store,
render: h => h(App)
}).$mount(\’#app\’)

这里,现在我还是不知道 permission.js 为什么会导致router-view不能渲染

//permission.js
import router from \’./index\’

router.beforeEach((to, from, next) => {
if (to.meta.isLogin) {
const token = false
if (token) {
next()
} else {
next({
name: \’Login\’
})
}
} else {
next()
}
})

总的来说:Vue中router-view无法显示可能是导入了什么不合适的文件导致

总结

到此这篇关于Vue中router-view无法显示的解决办法的文章就介绍到这了,更多相关Vuerouter-view无法显示内容请搜索悠久资源网以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源网!

您可能感兴趣的文章:

  • vue中router-view组件的使用详解
  • vue中的router-view组件的使用教程
  • vue 路由视图 router-view嵌套跳转的实现
  • vue router-view的嵌套显示实现

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 JavaScript Vue中router-view无法显示的解决办法 https://www.u-9.cn/biancheng/javascript/4507.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务