您好,登錄后才能下訂單哦!
這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)使用vue怎么實(shí)現(xiàn)兩個(gè)組件間值的傳遞,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
1、可以用公共的父組件來(lái)實(shí)現(xiàn);
2、可以在store.js里面在設(shè)置公共變量;
3、也可以用本地存儲(chǔ)localStorage.setItem()和localStorage.getItem(),通過(guò)修改本地存儲(chǔ)的值和獲取修改后的值來(lái)實(shí)現(xiàn);
4、就是父子組件間的值的傳遞與修改props,這里需要注意的是子組件里面不 能直接修改props里面接受的值,需要定義一個(gè)中間變量來(lái)接受props里的值并修改,通過(guò)$emit即this.$emit('checkDisplay',this.displayChild);來(lái)傳給父組件
5、也可以通過(guò)路由來(lái)傳值query,params,
a、 //跳轉(zhuǎn)頁(yè)面并傳值
this.$router.push({path:'/index',query:{name:'haha'}}) //獲取傳遞過(guò)來(lái)的數(shù)據(jù) this.$route.query.name
b、 或者是 //跳轉(zhuǎn)頁(yè)面并傳值
要記住的是params只能用name跳轉(zhuǎn),如果用path來(lái)傳值則傳不過(guò)去 ,而且這種傳值頁(yè)面刷新后所傳值將清空
this.$router.push({name:'index',params:{name:'nana'}}) //獲取傳遞過(guò)來(lái)的數(shù)據(jù) this.$route.params.name
c、也可以直接傳值
this.$router.push('/index/'+item.name) //跳轉(zhuǎn)頁(yè)面并傳值,不過(guò)這種傳值前提需在路由里面在路徑后面添加“/路徑/:參數(shù)名” this.$route.params.參數(shù)名 //獲取數(shù)據(jù)
但是這種方式會(huì)在地址欄顯示數(shù)據(jù),不安全
6、路徑地址傳值,params、query是什么?
params:/router1/:id ,/router1/123,/router1/789 ,這里的id叫做params,及上面方法c
query:/router1?id=123 ,/router1?id=456 ,這里的id叫做query。和上面方法a同理
當(dāng)你使用params方法傳參的時(shí)候,要在路由后面加參數(shù)名,并且傳參的時(shí)候,參數(shù)名要跟路由后面設(shè)置的參數(shù)名對(duì)應(yīng)。使用query方法,就沒(méi)有這種限制,直接在跳轉(zhuǎn)里面用就可以。
Vue是一套用于構(gòu)建用戶界面的漸進(jìn)式JavaScript框架,Vue與其它大型框架的區(qū)別是,使用Vue可以自底向上逐層應(yīng)用,其核心庫(kù)只關(guān)注視圖層,方便與第三方庫(kù)和項(xiàng)目整合,且使用Vue可以采用單文件組件和Vue生態(tài)系統(tǒng)支持的庫(kù)開發(fā)復(fù)雜的單頁(yè)應(yīng)用。
上述就是小編為大家分享的使用vue怎么實(shí)現(xiàn)兩個(gè)組件間值的傳遞了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。