亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

vue動態添加路由addRoutes之不能將動態路由存入緩存的解決

2019-11-19 12:06:32
字體:
來源:轉載
供稿:網友

在我不知道vue的路由還可以通過addRoutes動態添加時,我只知道vue的路由都是寫死在路由表中的,每當跳轉時再去加載相應的路由。直到在一個新公司接到需要根據用戶的權限顯示不同的菜單的需求時才知道了原來vue-router還有一個addRoutes的API,立馬研究了一下。

router.addRoutes:

函數簽名:

router.addRoutes(routes: Array<RouteConfig>)

動態添加更多的路由規則。參數必須是一個符合routes選項要求的數組。

點這里去看router.addRoutes的官方解釋

白話就是需要動態加入到路由表中的路由是必須要跟我們提前寫死的路由規則是一樣的。

有了這個玩意兒我們就可以依據系統管理員給用戶分配的權限來實現不同的用戶可以進入不同的菜單頁面的功能,是不是很nice?是不是很優秀?

但這個還不是本文的重點,本文的重點是“不能將需要動態添加的路由存入緩存!” 為什么這么說呢?

先說說我們的需求吧。

我們的項目開發中的動態路由是提前配好在路由表中的,只是和靜態路由分開寫在了兩個對象中,導出的時候默認只導出靜態路由,所謂的靜態路由就是所有用戶都可以訪問到的公共路由,比如登錄頁面、404頁面等。而不同用戶可訪問不同的菜單頁面是根據接口返回的一個菜單code來過濾提前配好的動態路由(提前配好的動態路由中也有一個code),再將過濾后的路由使用router.addRoutes動態添加即可。可能有些公司是通過接口直接把用戶的動態路由表按照路由的規則形式給返回了出來,前端只需拿到路由表稍作處理然后addRoutes就可以了。每個公司有每個公司的想法,你開心就好!

接下來就是我們項目中的路由過濾了,這里省略1000字,路由過濾完成并動態添加后就可以很愉快的訪問菜單頁面了。但我想的是,在全局路由守衛中請求接口返回的code(這里接口返回的是一個包含code和其他數據的json數組,所以我還得先把接口返回的code給過濾出來),然后再過濾路由,然后再動態添加,這對性能來說是一個不小的開銷,所以我就琢磨著能不能把首次過濾好的路由給存在緩存中,這樣下次就可以直接動態添加緩存中的路由了,豈不是是一件很美好的事情,結果是我想錯了,你們都想錯了!

來先看看過濾后打印出來的路由吧:

再來看看從緩存中讀出來的路由吧:

從兩張圖上紅色矩形圈圈可以看出,從緩存中讀出來的路由信息已經發生了改變,父路由中的render方法也沒有了(第一張圖中父路由的render方法還是有的,到了第二張就沒有了),且子路由children里邊已經沒有了component屬性(從第二張圖中的紅色箭頭處可以看出),這顯然不是我們想要的路由信息。有人說可以使用import xxx from ‘xxx'來替代component的值,這個針對父路由的component都引用了同一個Layout組件來說是可以的,但是子路由呢?從緩存中讀出來的子路由連component都沒有了,即使是有這個屬性,但子路由都引用了不同的component,那你怎么玩?況且將過濾后的路由信息通過緩存的存取來實現,安全上就會有問題,因為如果戶手動修改了緩存里的路由,那你所謂的動態路由權限豈不是立馬破功了。

所以,我們能做的就只能是在每次切換路由時都要重新請求接口并根據返回的code來動態過濾路由并添加,或者根據后端返回的動態路由表直接添加,性能上浪費一點也是沒有辦法的事兒,總比實現不了或不安全來的更好一點。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲午夜久久久久久久| 中文字幕日韩视频| 欧美一性一乱一交一视频| 国产mv免费观看入口亚洲| 精品国产欧美一区二区五十路| 68精品国产免费久久久久久婷婷| 精品女厕一区二区三区| 国产精品久久久久久久9999| 日韩不卡中文字幕| 国产精品自拍小视频| 97久久精品人人澡人人爽缅北| 国产欧美中文字幕| 欧美韩国理论所午夜片917电影| 国产精品视频一区二区三区四| 狠狠躁18三区二区一区| 国产精品一区av| 国产精品女人久久久久久| 亚洲黄页视频免费观看| 亚洲第一区在线| 国产精品视频免费在线观看| 亚洲激情视频网| 亚洲精品乱码久久久久久按摩观| 日韩av网站导航| 欧美亚洲国产视频小说| 97久久精品视频| 欧美在线www| 亚洲激情视频在线| 亚洲免费电影在线观看| 欧美色另类天堂2015| 狠狠躁天天躁日日躁欧美| 国产午夜精品全部视频在线播放| 久久久久国产精品免费网站| 色久欧美在线视频观看| 91中文在线观看| 中文字幕欧美日韩精品| 成人久久久久久| 国产一级揄自揄精品视频| 欧美电影免费播放| 亚洲丝袜在线视频| 国产精品网红福利| 亚洲欧美在线一区二区| 欧美激情精品在线| 成人精品网站在线观看| 国产成人综合精品在线| 中文字幕亚洲综合久久| 亚洲精品美女在线观看播放| 奇米四色中文综合久久| 国产在线视频欧美| 夜夜狂射影院欧美极品| 黑人与娇小精品av专区| 欧美精品激情视频| 国产欧美久久一区二区| 欧美一区二区三区精品电影| 国产一区二区三区在线视频| 亚洲精品一区二三区不卡| 国产精品高潮呻吟久久av野狼| 亚洲最大福利视频网站| 日韩av理论片| 久久91亚洲人成电影网站| 亚洲国产精品久久| 欧美日韩国产限制| 91老司机在线| 国内精品美女av在线播放| 日韩精品在线观| 久久久久日韩精品久久久男男| 亚洲激情小视频| 91久久精品在线| 久久在线精品视频| 国产精品爽爽ⅴa在线观看| 亚洲日本欧美日韩高观看| 欧美大肥婆大肥bbbbb| 日韩av免费看| 国产成人精品免费久久久久| 亚洲欧洲国产一区| 亚洲电影免费观看高清完整版在线| 久久福利网址导航| 美女999久久久精品视频| 8090理伦午夜在线电影| 久久久免费观看视频| 538国产精品视频一区二区| 一区二区欧美日韩视频| 日韩av片免费在线观看| 久久久亚洲影院| 狠狠躁夜夜躁人人爽天天天天97| 午夜精品一区二区三区在线视| 亚洲视频在线视频| 精品女同一区二区三区在线播放| 精品性高朝久久久久久久| 精品精品国产国产自在线| 日韩欧美福利视频| 热久久这里只有| 久久精品欧美视频| 亚洲美女免费精品视频在线观看| 亚洲字幕一区二区| 精品国模在线视频| 日韩欧美在线视频| 国产精品成人免费电影| 国产精品视频一区二区三区四| 91精品久久久久| 国产成人精品在线播放| 色综合视频网站| 亚洲精品wwwww| 97在线日本国产| 久久精品成人欧美大片古装| 欧美性色视频在线| 国产精品视频永久免费播放| 国产日本欧美一区二区三区| 亚洲自拍偷拍区| 国产一区私人高清影院| 欧美极品欧美精品欧美视频| 国产精品久久久久999| 在线成人免费网站| 国产日韩综合一区二区性色av| 久久在精品线影院精品国产| 在线观看视频亚洲| 亚洲精品电影在线观看| 91久久在线视频| 日韩免费观看在线观看| 欧美—级a级欧美特级ar全黄| 欧美激情亚洲国产| 精品久久久久久久久久久| 亚洲桃花岛网站| 日韩在线精品视频| 自拍偷拍亚洲在线| 91亚洲一区精品| 中文字幕亚洲无线码在线一区| 国产视频亚洲视频| 久久影院在线观看| 福利微拍一区二区| 国产一区二区三区在线播放免费观看| 国产日韩中文字幕在线| 久久天天躁夜夜躁狠狠躁2022| 日韩久久免费电影| 538国产精品一区二区免费视频| 欧美日韩日本国产| 日韩av中文字幕在线免费观看| 亚洲国产精久久久久久久| 欧美视频免费在线观看| 国产亚洲美女久久| 亚洲欧美自拍一区| 亚洲国产精品久久久久秋霞不卡| 8090理伦午夜在线电影| 亚洲国产99精品国自产| 国产精品福利网站| 国产精品第10页| y97精品国产97久久久久久| 成人免费自拍视频| 中文字幕精品一区二区精品| 国产精品一区二区三区在线播放| 欧美大片欧美激情性色a∨久久| 精品久久久在线观看| 插插插亚洲综合网| 欧美一区二粉嫩精品国产一线天| 国产美女久久精品香蕉69| 日韩av最新在线| 日本电影亚洲天堂| 久久久久久久电影一区| 国产精品丝袜视频| 日韩av中文字幕在线| 欧美成人午夜视频| 国产精品露脸自拍| 欧美高清第一页| 91精品国产免费久久久久久| 成人免费淫片aa视频免费|