刚学习vue,可能有使用不对的地方,但愿没有对你们形成困扰!vue
使用vue-router,为了可以更好的管理.vue文件,须要用到子路由。vue-router
先看个错误的例子学习
routers.jsui
'/company':{ //公司 name:'company', component: function (resolve) { require(['./views/company/index.vue'], resolve); }, subRoutes: { '/about':{ //关于 component: function (resolve) { require(['./views/company/about.vue'], resolve); } } } },
上面的代码会引发什么问题呢?缘由没找到,主要出现的问题以下:spa
查了各类地方,都没有找到问题所在。后来本身再根据vue-router的官方文档,弄了一下,发现最关键点在于这里:3d
// 嵌套的路由
'/c': {
component: {
// 渲染子视图
template: '<router-view></router-view>'
},
subRoutes: {
// 当路径是 /c/d 时进行渲染
'/d': { component: { template: 'D' }},
// 当路径是 /c/e 时进行渲染
'/e': { component: { template: 'E' }}
}
}
貌似是主路由,渲染了,子路由没地方渲染。code
最后的解决方法是:component
'/company':{ //公司 name:'company', component: { template: '<router-view></router-view>' }, subRoutes: { '/':{ //关于 component: function (resolve) { require(['./views/company/index.vue'], resolve); } }, '/about':{ //关于 component: function (resolve) { require(['./views/company/about.vue'], resolve); } } } },
如各位看到这篇文章,发现有误的地方,请多多交流router
Have fun with Vuejsblog