vue3中使用router路由實現(xiàn)跳轉(zhuǎn)傳參的方法
大家好,今天和大家分享一下vue3中如何進(jìn)行跳轉(zhuǎn)并進(jìn)行傳參。
前言
vue3取消了vue2部分api,所以路由跳轉(zhuǎn)和傳值的方式會有所不同。
我們今天主要講router.push(location, onComplete?, onAbort?)
vue3中新增API:useRouter和useRoute
一、路由跳轉(zhuǎn)
1.首先在需要跳轉(zhuǎn)的頁面引入API—useRouter
import { useRouter } from 'vue-router'
2.在跳轉(zhuǎn)頁面定義router變量
//先在setup中定義 const router = useRouter()
3.用router.push跳轉(zhuǎn)頁面
// 字符串 router.push('home') // 對象 router.push({ path: 'home' }) // 命名的路由 router.push({ name: 'user', params: { userId: '123' }}) // 帶查詢參數(shù),變成 /register?userId=123 router.push({ path: 'register', query: { userId: '123' }})
4.如果有參數(shù)的話,在接收頁面引入API–useRoute
import { useRoute } from 'vue-router'
5.在接收頁面定義變量route,獲取傳過來的變量
//首先在setup中定義 const route = useRoute() //query let userId=route.query.userId; //params let userId=route.params.userId;
二、頁面?zhèn)鲄⑿枰⒁?/h2>
1.如果提供了 path,params 會被忽略,但query 沒有這種情況,此時需要提供路由的 name 或手寫完整的帶有參數(shù)的 path
const userId = '123' router.push({ name: 'user', params: { userId }}) router.push({ path: `/user/${userId}` }) // 這里的 params 不生效 router.push({ path: '/user', params: { userId }})
2.上述規(guī)則同樣適用于 router-link 組件的 to 屬性
3.如果目的地和當(dāng)前路由相同,只有參數(shù)發(fā)生了改變 (比如從一個用戶資料到另一個 /users/1 -> /users/2),你需要使用 beforeRouteUpdate 來響應(yīng)這個變化 (比如抓取用戶信息)
總結(jié)
到此這篇關(guān)于vue3中使用router路由實現(xiàn)跳轉(zhuǎn)傳參的文章就介紹到這了,更多相關(guān)vue3路由跳轉(zhuǎn)傳參內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- vue中this.$router.go(-1)失效(路由改變了,界面未刷新)
- vue3使用vue-router嵌套多級路由的方法
- vue中路由router配置步驟詳解
- 在vue中路由使用this.$router.go(-1)返回兩次問題
- Vue?router?路由安裝及使用過程
- 解讀Vue-Router?使用?prams?路由傳參失效
- vue使用動態(tài)添加路由(router.addRoutes)加載權(quán)限側(cè)邊欄的方式
- vue3使用vue-router及路由權(quán)限攔截方式
- Vue3使用vue-router如何實現(xiàn)路由跳轉(zhuǎn)與參數(shù)獲取
- Vue中vue-router路由使用示例詳解
相關(guān)文章
關(guān)于vue中如何監(jiān)聽數(shù)組變化
這篇文章主要介紹了關(guān)于vue中如何監(jiān)聽數(shù)組變化,對vue感興趣的同學(xué),必須得參考下2021-04-04vue3?v-bind="$attrs"繼承組件全部屬性的解決方案
這篇文章主要介紹了vue3?v-bind=“$attrs“?繼承組件全部屬性的解決方案,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-06-06Composition Api封裝業(yè)務(wù)hook思路示例分享
這篇文章主要為大家介紹了Composition Api封裝業(yè)務(wù)hook的思路示例分享,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07vue項目啟動出現(xiàn)cannot GET /服務(wù)錯誤的解決方法
這篇文章主要介紹了vue項目啟動出現(xiàn)cannot GET /服務(wù)錯誤的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04vue router-link 默認(rèn)a標(biāo)簽去除下劃線的實現(xiàn)
這篇文章主要介紹了vue router-link 默認(rèn)a標(biāo)簽去除下劃線的實現(xiàn)操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11