<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        使用Vue的路由權限管理方面的問題(詳細教程)

        來源:懂視網 責編:小采 時間:2020-11-27 19:43:12
        文檔

        使用Vue的路由權限管理方面的問題(詳細教程)

        使用Vue的路由權限管理方面的問題(詳細教程):本篇文章主要介紹了關于Vue的路由權限管理的示例代碼,現在分享給大家,也給大家做個參考。前言曾經在工作上對 vue 路由權限管理這方面有過研究,這幾天又看到了幾篇相關的文章,再加上昨天電面中又再一次提及到,就索性整理了一下自己的一些看法,希望對大家
        推薦度:
        導讀使用Vue的路由權限管理方面的問題(詳細教程):本篇文章主要介紹了關于Vue的路由權限管理的示例代碼,現在分享給大家,也給大家做個參考。前言曾經在工作上對 vue 路由權限管理這方面有過研究,這幾天又看到了幾篇相關的文章,再加上昨天電面中又再一次提及到,就索性整理了一下自己的一些看法,希望對大家
        本篇文章主要介紹了關于Vue的路由權限管理的示例代碼,現在分享給大家,也給大家做個參考。

        前言

        曾經在工作上對 vue 路由權限管理這方面有過研究,這幾天又看到了幾篇相關的文章,再加上昨天電面中又再一次提及到,就索性整理了一下自己的一些看法,希望對大家有幫助。

        實現

        大體上實現的思路很簡單,先上圖:

        無非是將路由配置按用戶類型分割為 用戶路由 和 基本路由,不同的用戶類型可能存在不同的 用戶路由,具體依賴實際業務。

        1. 用戶路由: 當前用戶所特有的路由

        2. 基本路由:所有用戶均可以訪問的路由

        實現控制的方式分兩種:

        通過vue-router addRoutes 方法注入路由實現控制
        通過vue-router beforeEach 鉤子限制路由跳轉

        addRoutes 方式:

        通過請求服務端獲取當前用戶路由配置,編碼為 vue-router 所支持的基本格式(具體如何編碼取決于前后端協商好的數據格式),通過調用 this.$router.addRoutes 方法將編碼好的用戶路由注入到現有的 vue-router 實例中去,以實現用戶路由。

        beforeEach 方式

        通過請求服務端獲取當前用戶路由配置,通過注冊 router.beforeEach 鉤子對路由的每次跳轉進行管理,每次跳轉都進行檢查,如果目標路由不存再于 基本路由 和 當前用戶的 用戶路由 中,取消跳轉,轉為跳轉錯誤頁。

        以上兩種方式均需要在 vue-router 中配置錯誤頁,以保證用戶感知權限不足。

        兩種方式的原理其實都是一樣的,只不過 addRoutes 方式 通過注入路由配置告訴 vue-router :“當前我們就只有這些路由,其它路由地址我們一概不認”,而 beforeEach 則更多的是依賴我們手動去幫 vue-router 辨別什么頁面可以去,什么頁面不可以去。說白了也就是 自動 與 手動 的差別。說到這,估計大家都會覺得既然是 自動 的,那肯定是 addRoutes 最方便快捷了,還能簡化業務代碼,筆者一開始也是這么認為的,但是!很多人都忽略了一點:

        addRoutes 方法僅僅是幫你注入新的路由,并沒有幫你剔除其它路由!

        設想存在這么一種情況:用戶在自己電腦上登錄了管理員賬號,這個時候會向路由中注入管理員的路由,然后再退出登錄,保持頁面不刷新,改用普通用戶賬號進行登錄,這個時候又會向路由中注入普通用戶的路由,那么,在路由中將存在兩種用戶類型的路由,即使用戶不感知,通過改變 url,普通用戶也可以訪問管理員的頁面!

        對于這個問題,也有一個解決辦法:

        通過新建一個全新的 Router,然后將新的 Router.matcher 賦給當前頁面的管理 Router,以達到更新路由配置的目的。

        筆者做了一個小demo,大家可以去體驗一下。

        關于上述問題,在vue-router 的 github issues 下有過討論,分別是:

        Add option to Reset/Delete Routes #1436

        Feature request: replace routes dynamically #1234

        上面是我整理給大家的,希望今后會對大家有幫助。

        相關文章:

        layui表格checkbox選擇全選樣式及功能的實例

        layui select動態添加option的實例

        Bootstrap實現可折疊分組側邊導航菜單

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        使用Vue的路由權限管理方面的問題(詳細教程)

        使用Vue的路由權限管理方面的問題(詳細教程):本篇文章主要介紹了關于Vue的路由權限管理的示例代碼,現在分享給大家,也給大家做個參考。前言曾經在工作上對 vue 路由權限管理這方面有過研究,這幾天又看到了幾篇相關的文章,再加上昨天電面中又再一次提及到,就索性整理了一下自己的一些看法,希望對大家
        推薦度:
        標簽: VUE 權限 權限的
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 婷婷亚洲久悠悠色悠在线播放| 亚洲精品无码久久久久AV麻豆| 免费欧洲美女牲交视频| 亚洲一久久久久久久久| 成人au免费视频影院| 亚洲综合无码一区二区痴汉| 女人18一级毛片免费观看| 亚洲最大的成人网站| 国产精品色午夜免费视频| 亚洲国产一区二区三区在线观看| 久久精品无码一区二区三区免费| 中日韩亚洲人成无码网站| 国产精品国产午夜免费福利看| 猫咪www免费人成网站| 亚洲中文久久精品无码| 先锋影音资源片午夜在线观看视频免费播放| 亚洲日韩一页精品发布| 最近2022中文字幕免费视频| 亚洲区视频在线观看| 日韩伦理片电影在线免费观看| 免费视频精品一区二区| 亚洲大片在线观看| 永久免费av无码网站韩国毛片| 午夜宅男在线永久免费观看网| 免费的一级片网站| 日韩免费视频播播| 日本一线a视频免费观看| 久久亚洲精品视频| 亚洲综合色区在线观看| 免费观看四虎精品成人| 亚洲线精品一区二区三区影音先锋| 国产在线精品观看免费观看| 久久久亚洲裙底偷窥综合| 拍拍拍又黄又爽无挡视频免费| 激情亚洲一区国产精品| 岛国片在线免费观看| 一级女人18片毛片免费视频| 亚洲日韩中文字幕| 免费人成激情视频| 中文字幕天天躁日日躁狠狠躁免费| 亚洲国产成人精品无码久久久久久综合 |