久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

vue路由結(jié)構(gòu)可設(shè)一層方便動態(tài)添加路由操作

瀏覽:161日期:2022-12-02 10:39:48

動態(tài)添加路由基本功能

let routes=[{ path: ’/login’, name: ’login’, component: () => import(’../components/Login.vue’) }]

this.$router.addRoutes(routes)

涉及多層路由嵌套 如圖

vue路由結(jié)構(gòu)可設(shè)一層方便動態(tài)添加路由操作

單純使用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, }, ]},

每一層單獨(dú)包含一個子集合方便權(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ù)返回上一層

解決

官方文檔

vue路由結(jié)構(gòu)可設(shè)一層方便動態(tài)添加路由操作

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)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 密云县| 茂名市| 隆子县| 杭州市| 隆昌县| 辉县市| 新邵县| 榆林市| 鄂州市| 孟津县| 景谷| 苍南县| 宁武县| 山东| 潢川县| 卓尼县| 乌拉特前旗| 新蔡县| 宣化县| 沛县| 潼南县| 忻州市| 浦江县| 上高县| 长沙县| 焦作市| 西华县| 寻乌县| 肇东市| 连江县| 赤峰市| 扎鲁特旗| 四子王旗| 红河县| 万山特区| 那坡县| 瑞金市| 遂宁市| 社旗县| 塘沽区| 天门市|