vue路由結(jié)構(gòu)可設(shè)一層方便動態(tài)添加路由操作
動態(tài)添加路由基本功能
let routes=[{ path: '/login', name: 'login', component: () => import('../components/Login.vue') }]
this.$router.addRoutes(routes)
涉及多層路由嵌套 如圖
單純使用addRoutes 層級結(jié)構(gòu)不同
修改路由結(jié)構(gòu)
例:
{ name:'account', path: '/account/account', meta: { title: '個人中心', requireAuth: true }, component: account, children:[ { name: 'account', path: '/account/account', meta: { title: '賬號設(shè)置', requireAuth: true }, component: setAccount, }, { name: 'childMgt', path: '/account/childMgt', meta: { title: '子賬號管理', requireAuth: true }, component: childMgt, }, ] },
修改單一結(jié)構(gòu)
{ name:'account', path: '/account/account', meta: { title: '個人中心', requireAuth: true }, component: account, children:[ { name: 'account', path: '/account/account', meta: { title: '賬號設(shè)置', requireAuth: true }, component: setAccount, }, ] }, { name:'account', path: '/account/childMgt', meta: { title: '個人中心', requireAuth: true }, component: account, children:[ { name: 'userMgt', path: '/account/childMgt', meta: { title: '子賬號管理', requireAuth: true }, component: childMgt, }, ] },
每一層單獨包含一個子集合方便權(quán)限管理動態(tài)添加
main.js
router.beforeEach((to, from, next) => { if (from.name == null) { //頁面刷新 let pathName = sessionStorage.getItem("pathName") //暫存上一個路由 if (pathName == to.path||pathName==to.redirectedFrom) { } else { sessionStorage.setItem("pathName", to.redirectedFrom) } } else { sessionStorage.setItem("pathName", to.path) } next() })
app.vue
let routes=[處理后路由信息] this.$router.addRoutes(routes) this.$nextTick(i=>{ this.$router.replace(sessionStorage.getItem("pathName"))//跳轉(zhuǎn)指定地址 否則404 })
補(bǔ)充知識:vue路由進(jìn)入下一層返回上一層重復(fù)跳轉(zhuǎn)之前進(jìn)入頁面
說明
vue路由返回上一層,使用 this.$router.back(-1)
進(jìn)入其他頁面用 this.$outer.push('home')
這樣當(dāng)我進(jìn)入頁面會發(fā)生如下場景
進(jìn)入頁面時:A-B-C
返回頁面時:C-B-A
總的路徑行程:A-B-C-B-A
總的來是:頁面返回時重復(fù)返回上一層
解決
官方文檔
this.$outer.push('home') // 會重復(fù)添加路由信息進(jìn)入路由記錄
this.$outer.replace('home') // 會替換之前的路由記錄
this.$outer.replace('home') // 跳轉(zhuǎn)頁面推薦用這個
以上這篇vue路由結(jié)構(gòu)可設(shè)一層方便動態(tài)添加路由操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
基于vue-simple-uploader封裝文件分片上傳、秒傳及斷點續(xù)傳的全局上傳插件功能
這篇文章主要介紹了基于vue-simple-uploader封裝文件分片上傳、秒傳及斷點續(xù)傳的全局上傳插件,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02vue+el-table點擊表頭實現(xiàn)改變其當(dāng)前樣式
這篇文章主要介紹了vue+el-table點擊表頭實現(xiàn)改變其當(dāng)前樣式問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-08-08vue 路由子組件created和mounted不起作用的解決方法
今天小編就為大家分享一篇vue 路由子組件created和mounted不起作用的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11vue組件中iview的modal組件爬坑問題之modal的顯示與否應(yīng)該是使用v-show
這篇文章主要介紹了vue組件中iview的modal組件爬坑問題之modal的顯示與否應(yīng)該是使用v-show,本文通過實例圖文相結(jié)合的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-04-04