vue-router地址欄URL全局參數拼接


vue路由URL拼接全局參數

業務需求:
vue單頁面項目,需要在URL地址欄拼接固定的參數,在所有頁面使用。默認采用vue路由的history模式;hash模式也可以同樣適用。
主要是在vue-router導航守衛的全局前置守衛中實現。即vue-router生命周期鈎子函數 router.beforeEach 中進行路由攔截處理。
主要代碼:

router.beforeEach((to, from, next) => {
    if (Object.keys(to.query).length) {
        next();
        return;
    }
    // 對URL路徑參數進行處理
    if (Object.keys(from.query).length) {
        let toQuery = JSON.parse(JSON.stringify(from.query));
        next({ path: to.path, query: toQuery });
    } else {
        next();
    }
});

注:最初只是設置一個固定的參數,但是后期參數地址欄會動態拼接出來一些參數,這些參數可能需要在部分路徑需要使用,所以就對路由攔截進行了相應的處理。即現在代碼塊中展示的。此方法解決了我所需要解決的問題。若要結合自身項目使用,請根據自己的實際需求進行相應的調整。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM