您好,登錄后才能下訂單哦!
發現問題
最近在打開項目的時候,發現我的默認路由沒加載上linkActiveClass,
網上一搜,發現很多同學也有這個問題,查了一些資料發現這是個重定向的問題,官網文檔是這么寫的
https://router.vuejs.org/zh-cn/essentials/redirect-and-alias.html
重定向
重定向也是通過 routes 配置來完成,下面例子是從 /a 重定向到 /b:
const router = new VueRouter({ routes: [ { path: '/a', redirect: '/b' } ] })
重定向的目標也可以是一個命名的路由:
const router = new VueRouter({ routes: [ { path: '/a', redirect: { name: 'foo' }} ] })
甚至是一個方法,動態返回重定向目標:
const router = new VueRouter({ routes: [ { path: '/a', redirect: to => { // 方法接收 目標路由 作為參數 // return 重定向的 字符串路徑/路徑對象 }} ] })
我的代碼本來是這樣的:
const router=new VueRouter({ linkActiveClass:'list-active', routes:[ { path:'/', component:user }, { path:'/user', component:user }, { path:'/warship', component:warship } ] })
這樣雖然加載了子路由,但是它的默認類沒跟著過來,然后加了一句redirect:'/user',修改成了這樣
修改后:
const router=new VueRouter({ linkActiveClass:'list-active', routes:[ { path:'/', redirect:'/user', component:user }, { path:'/user', component:user }, { path:'/warship', component:warship } ] })
就完美解決了默認路由class沒加載的問題。
這個重定向簡單來說就是自定義路由指針,就跟js里面修改了引用地址一個道理,雖然表面上看著是個根目錄,其實引用的是別的路由界面。
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。