剛學習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