最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue動態(tài)路由路徑重復及刷新丟失頁面問題的解決

 更新時間:2023年01月14日 09:16:26   作者:沒有傘的孩子要學會努力奔跑!  
這篇文章主要介紹了Vue動態(tài)路由路徑重復及刷新丟失頁面問題的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Vue動態(tài)路由路徑重復及刷新丟失頁面

1.使用router.addRoutes(teacherRouter);

添加完路由切換路由時,vue會警告路由名字重復

問題出現(xiàn)原因是:動態(tài)路由添加時調(diào)傭addRoutes();它只會幫你注入路由,不會幫你把前面的路由清掉。如此一來就重復添加了。

解決方法:路由動態(tài)添加關鍵頁面需要在路由配置頁(router/index.js)添加自定義方法

router.$addRoutes = params => {
? router.matcher = new Router({
? ? routes: router.options.routes
  // 關鍵代碼
? }).matcher;
? router.addRoutes(params);
};

2.問題

在添加后進行頁面刷新后,動態(tài)添加的路由會消失,路勁找不到

可以使用localstorage緩存,頁面路由權限判斷頁(promission.js)用了路由beforeEach可以直接判斷路由刷新:

if (from.name === null) {
? ? ? // 刷新
? ? ? router.$addRoutes(accessRoutes);
? ? ? // 確保頁面加載完成
? ? ? next({ ...to, replace: true });
? }?

3.問題

切換不同角色權限,之前動態(tài)添加的路由沒有被清除,進入看到的還是上次進入的權限頁面。

問題在于vue的store沒有被清空,把store里的route清空就行:

可以在退出登錄設置,也可以在添加路由時清空,以下代碼為store內(nèi)permission.js添加動態(tài)路由前清空路由

const mutations = {
? SET_ROUTES: (state, routes) => {
? ? state.addRoutes = routes;
? ? state.routes = constantRoutes.concat(routes);
? },
? RESET_ROUTES: (state, payLoad) => {
? ? state.addRoutes = [];
? ? state.routes = [];
? }
};?
generateRoutes({ commit }, roles) {
? ? return new Promise(resolve => {
? ? ? // 關鍵代碼 == 添加路由前將路由重置為空
? ? ? commit("RESET_ROUTES");
? ? ? // 設置登錄的路由權限
? ? ? let accessedRoutes;
? ?
? ? ?if (roles === 4) {
? ? ? ? // 教師登錄
? ? ? ?accessedRoutes = teacherRouter;
? ? ?}
? ? ?if (roles === 3) {
? ? ? ?// 學生登錄
? ? ? ?accessedRoutes = studentRouter;
? ? ?}

? ? ?commit("SET_ROUTES", accessedRoutes);
? ? ?resolve(accessedRoutes);
? ?});?

Vue路由動態(tài)添加重復警告重復

動態(tài)添加路由后,控制臺警告重復,在router.js中添加下面代碼

const createRouter = () => new Router({
?? ? mode: 'history',
?? ? routes: constantRoutes
})
const router = createRouter()
export function resetRouter () {
?? ?const newRouter = createRouter()
?? ?router.matcher = newRouter.matcher
}
export default router

addRoutes()方法是router自帶的原生方法,是動態(tài)添加路由的,它并沒有刪除之前路由中原有的路由所以在permission.js中引入router,并且添加在addRoutes之前resetRouter

import router,{resetRouter} from './router'
store.dispatch('GenerateRoutes').then(accessRoutes => {
? ? // 根據(jù)roles權限生成可訪問的路由表
?? ?resetRouter()
?? ?router.addRoutes(accessRoutes)// 動態(tài)添加可訪問路由表
})

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • vue+elementUI中表格高亮或字體顏色改變操作

    vue+elementUI中表格高亮或字體顏色改變操作

    這篇文章主要介紹了vue+elementUI中表格高亮或字體顏色改變操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • element table多層嵌套顯示的實踐

    element table多層嵌套顯示的實踐

    本文主要介紹了element table多層嵌套顯示的實踐,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • Vue中用watch一次監(jiān)聽多個值變化的示例詳解

    Vue中用watch一次監(jiān)聽多個值變化的示例詳解

    在Vue中,watch 本身不能監(jiān)聽多個變量,但我們可以通過返回具有計算屬性的對象然后監(jiān)聽該對象,從而實現(xiàn)一次性“監(jiān)聽多個變量”,本文給大家介紹了Vue中用watch一次監(jiān)聽兩個值變化的示例,需要的朋友可以參考下
    2024-01-01
  • vue 將多個過濾器封裝到一個文件中的代碼詳解

    vue 將多個過濾器封裝到一個文件中的代碼詳解

    這篇文章主要介紹了vue 將多個過濾器封裝到一個文件中實現(xiàn)方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2020-09-09
  • vue實現(xiàn)橫向時間軸組件方式

    vue實現(xiàn)橫向時間軸組件方式

    這篇文章主要介紹了vue實現(xiàn)橫向時間軸組件方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Vue實現(xiàn)帶進度條的文件拖動上傳功能

    Vue實現(xiàn)帶進度條的文件拖動上傳功能

    這篇文章主要介紹了Vue實現(xiàn)帶進度條的文件拖動上傳功能,本文通過實例代碼給大家介紹的非常詳細,具有參考借鑒價值,需要的朋友可以參考下
    2018-02-02
  • Vue Ajax跨域請求實例詳解

    Vue Ajax跨域請求實例詳解

    這篇文章主要介紹了Vue Ajax跨域請求實例詳解,需要的朋友可以參考下
    2017-06-06
  • vue兩次賦值頁面獲取不到的解決

    vue兩次賦值頁面獲取不到的解決

    這篇文章主要介紹了vue兩次賦值頁面獲取不到的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 淺談Vue static 靜態(tài)資源路徑 和 style問題

    淺談Vue static 靜態(tài)資源路徑 和 style問題

    這篇文章主要介紹了淺談Vue static 靜態(tài)資源路徑 和 style問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • vue3.0使用vue-pdf-embed在線預覽pdf 控制頁碼顯示范圍不生效問題解決

    vue3.0使用vue-pdf-embed在線預覽pdf 控制頁碼顯示范圍不生效問題解決

    這篇文章主要介紹了vue3.0使用vue-pdf-embed在線預覽pdf 控制頁碼顯示范圍不生效問題的問題及解決方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-01-01

最新評論

东乡族自治县| 岗巴县| 佛冈县| 嘉兴市| 泗洪县| 栾川县| 米林县| 台南市| 泾阳县| 建阳市| 濮阳市| 德化县| 黎川县| 龙州县| 慈利县| 桃园市| 涟源市| 尉犁县| 汕头市| 文安县| 东光县| 手机| 静宁县| 年辖:市辖区| 全椒县| 中超| 抚宁县| 建水县| 恩施市| 浙江省| 小金县| 格尔木市| 远安县| 长顺县| 晋江市| 天气| 静安区| 龙口市| 汕头市| 来宾市| 汾阳市|