$router.push()中通過path跳轉和通過name跳轉區(qū)別解析
今天在路由跳轉傳參時發(fā)現(xiàn)params傳參接收到的總是為空,才發(fā)現(xiàn)通過path和name傳參是有區(qū)別的
- path傳參要完整的路徑,不能帶參數(shù)。name傳參可以帶params。
- params的傳參頁面刷新會丟失,query的傳參不會丟失
使用path進行跳轉:
當你使用path進行跳轉時,你需要提供完整的路徑字符串,包括路徑和查詢參數(shù)(如果有的話)。例如:
this.$router.push({ path: '/user/123' })使用path進行跳轉的優(yōu)點是路徑是靜態(tài)的,你可以直接指定要跳轉到的路徑。但是,如果你需要傳遞參數(shù)或查詢參數(shù),你需要手動構建完整的路徑字符串。
使用name進行跳轉:
當你使用name進行跳轉時,你只需要提供路由的名稱,而不需要手動構建路徑字符串。Vue Router會自動解析并找到對應的路徑。例如:
this.$router.push({ name: 'User' });使用name進行跳轉的優(yōu)點是你可以通過簡單的名稱來指定要跳轉到的路由,而不需要手動構建路徑字符串。同時,Vue Router會自動解析并找到對應的路徑。此外,當使用命名路由時,你還可以傳遞參數(shù),例如:
this.$router.push({ name: 'User', params: { userId: 123 } });這樣,Vue Router會自動將userId參數(shù)填充到路徑中。
總而言之,使用path和name進行跳轉的主要區(qū)別在于:使用path時,你需要手動構建完整的路徑字符串;而使用name時,你可以通過簡單的名稱來指定路由,并可以傳遞參數(shù)。
到此這篇關于$router.push()中通過path跳轉和通過name跳轉有什么區(qū)別的文章就介紹到這了,更多相關$router.push() 跳轉內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
詳解基于Vue的支持數(shù)據(jù)雙向綁定的select組件
這篇文章主要介紹了詳解基于Vue的支持數(shù)據(jù)雙向綁定的select組件,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-09-09
vuex通過getters訪問數(shù)據(jù)為undefined問題及解決
這篇文章主要介紹了vuex通過getters訪問數(shù)據(jù)為undefined問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-08-08

