vue的傳參方式匯總和router使用技巧
vue傳參方法一
1,路由配置
{
path: '/describe/:id',
name: 'Describe',
component: Describe
}
2,使用方法
// 直接調(diào)用$router.push 實(shí)現(xiàn)攜帶參數(shù)的跳轉(zhuǎn)
this.$router.push({
// 這個(gè)id是一個(gè)變量,隨便是什么值都可以
path: /describe/${id}`,
})
3,獲取方法(在describe頁(yè)面)
$route.params.id
使用以上方法可以拿到上個(gè)頁(yè)面?zhèn)鬟^(guò)來(lái)的id值
vue傳參方法二
1,路由配置
{
path: '/describe',
name: 'Describe',
component: Describe
}
(這個(gè)地方默認(rèn)配置就可以了,不用做任何的處理)
2,使用方法
this.$router.push({
name: 'Describe',
params: {
id: id
}
})
父組件中:通過(guò)路由屬性中的name來(lái)確定匹配的路由,通過(guò)params來(lái)傳遞參數(shù)。
3,獲取方法(在describe頁(yè)面)
$route.params.id
也用params獲取就可以了;
vue傳參方法三
1,路由配置
{
path: '/describe',
name: 'Describe',
component: Describe
}
(默認(rèn)配置)
2,使用方法
this.$router.push({
path: '/describe',
query: {
id: id
}
})
(params換成了query)
3,獲取方法(在describe頁(yè)面)
$route.query.id
(這個(gè)地方用query還獲取id,和前面用的params獲取的區(qū)別在于,用query獲取的id值會(huì)在url中有顯示,可以看到你傳過(guò)來(lái)的值)
props傳值方法
父組件
(table-data這個(gè)地方可以隨便取名字,不是特定的值)
<div class="content"> //這個(gè)是一個(gè)普通組件,其中tabelData可以是變量,也可以是常量,和pageInfo一樣樣,這里打算傳遞兩個(gè)值過(guò)去,其實(shí)也可以用對(duì)象的方式傳過(guò)去都是可以的。 <my-table :table-data="tableData" :page-info="pageInfo" id="myTable"></my-table> </div>
子組件
props: ['tableData', 'pageInfo'],
data() {
return {
tData: this.tableData,
page: this.pageInfo
}
}
prop是單向綁定的,不應(yīng)該在子組件內(nèi)部改變prop。不過(guò)這里的props傳過(guò)來(lái)的值會(huì)隨之父組件的值的改變而改變,是動(dòng)態(tài)改變的。
$route使用小技巧
1,$route.path
類型: string
字符串,對(duì)應(yīng)當(dāng)前路由的路徑,總是解析為絕對(duì)路徑,如 "/foo/bar"。
2,$route.params
類型: Object
一個(gè) key/value 對(duì)象,包含了動(dòng)態(tài)片段和全匹配片段,如果沒(méi)有路由參數(shù),就是一個(gè)空對(duì)象。
3,$route.query
類型: Object
一個(gè) key/value 對(duì)象,表示 URL 查詢參數(shù)。例如,對(duì)于路徑 /foo?user=1,則有 $route.query.user == 1,如果沒(méi)有查詢參數(shù),則是個(gè)空對(duì)象。
4,$route.hash
類型: string
當(dāng)前路由的 hash 值 (帶 #) ,如果沒(méi)有 hash 值,則為空字符串。
5,$route.fullPath
類型: string
完成解析后的 URL,包含查詢參數(shù)和 hash 的完整路徑。
詳細(xì)請(qǐng)見(jiàn)(https://router.vuejs.org/zh-cn/api/route-object.html)
總結(jié)
以上所述是小編給大家介紹的vue的傳參方式和router使用技巧,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
詳解vue beforeRouteEnter 異步獲取數(shù)據(jù)給實(shí)例問(wèn)題
這篇文章主要介紹了vue beforeRouteEnter 異步獲取數(shù)據(jù)給實(shí)例問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
vue實(shí)現(xiàn)tab路由切換組件的方法實(shí)例
這篇文章主要給大家介紹了關(guān)于vue實(shí)現(xiàn)tab路由切換組件的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05
在vue中多次調(diào)用同一個(gè)定義全局變量的實(shí)例
今天小編就為大家分享一篇在vue中多次調(diào)用同一個(gè)定義全局變量的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-09-09
vue項(xiàng)目中使用particles實(shí)現(xiàn)粒子背景效果及遇到的坑(按鈕沒(méi)有點(diǎn)擊響應(yīng))
為了提高頁(yè)面展示效果,登錄界面內(nèi)容比較單一的,粒子效果作為背景經(jīng)常使用到,vue工程中利用vue-particles可以很簡(jiǎn)單的實(shí)現(xiàn)頁(yè)面的粒子背景效果,本文給大家分享在實(shí)現(xiàn)過(guò)程中遇到問(wèn)題,需要的朋友一起看看吧2020-02-02
vue引入微信sdk 實(shí)現(xiàn)分享朋友圈獲取地理位置功能
這篇文章主要介紹了h5 vue引入微信sdk 實(shí)現(xiàn)分享朋友圈,分享給朋友,獲取地理位置功能,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-07-07
vite2.0+vue3移動(dòng)端項(xiàng)目實(shí)戰(zhàn)詳解
這篇文章主要介紹了vite2.0+vue3移動(dòng)端項(xiàng)目實(shí)戰(zhàn)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
使用Vue實(shí)現(xiàn)簡(jiǎn)單日歷效果
這篇文章主要為大家詳細(xì)介紹了使用Vue實(shí)現(xiàn)簡(jiǎn)單日歷效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-08-08

