這篇文章主要介紹“uni-app組件通信的方式是什么”,在日常操作中,相信很多人在uni-app組件通信的方式是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”uni-app組件通信的方式是什么”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
專注于為中小企業(yè)提供網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)邢臺縣免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了1000多家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
uni-app的通信方式和vue小程序是一樣的 但語法上采用了vue的
主要分為 父傳子 : props
子傳父 通過 v-on 簡寫 @
兄弟組件通信 uni.$on
首先是父傳子
父組件
<template>
<view class="content">
<assembly :name="name"></assembly>
</view>
</template>
<script>
import text from "/assembly/assembly.vue"
export default {
data() {
return {
imageurl: [],
name: '子組件定義姓名'
}
},
components:{
assembly: text
},
}
</script>
然后子組件assembly就可以通過props拿到這個name
代碼如下
<template>
<view>{{ name }}</view>
</template>
<script>
export default {
data() {
return {
}
},
props: ["name"],
created(){
console.log(this.name);
},
}
</script>
這里需要注意 vue中的props是個大對象 而在uni中我們需要用一個 字符串?dāng)?shù)組來接
然后子傳父的話 需要子組件調(diào)用父組件傳遞給自己的事件并傳參
父組件
<template>
<view class="content">
<assembly :name="name" @getname="getname"></assembly>
</view>
</template>
<script>
import text from "/assembly/assembly.vue"
export default {
data() {
return {
imageurl: [],
name: '子組件定義姓名'
}
},
components:{
assembly: text
},
methods: {
getname(name){
console.log(name);
}
}
}
</script>
此時我們定義了一個getname方法并傳遞給了子組件 并接受一個參數(shù)并打印出來
然后我們在子組件中調(diào)用他
<template>
<view @click="getname">{{ name }}</view>
</template>
<script>
export default {
data() {
return {
}
},
props: ["name"],
created(){
console.log(this.name);
},
methods: {
getname(){
this.$emit('getname','子組件傳給父組件的值')
}
}
}
</script>
當(dāng)我們點(diǎn)擊view時 觸發(fā)子組件自己的getname 然后在這個方法中調(diào)用了父組件傳來的getname方法 并傳遞了參數(shù)
然后是兄弟組件傳值
例如我們一個父組件同時引用了 texta 和 textb做自己的子組件
然后我們可以在texta中寫
<template>
<viev>{{ name }}</view>
</template>
<script>
export default {
data() {
return {
name: '初始值'
}
},
created(){
uni.$on('bingdts',res=>{
this.name = res
})
}
}
</script>
此時我們A組件就定義了一個bingdts方法 然后我們可以通過B組件 去調(diào)用這個方法和傳參
textb組件寫法
<template>
<view @click="getname">{{ name }}</view>
</template>
<script>
export default {
data() {
return {
name: "修改兄弟值"
}
},
methods: {
getname(){
uni.$emit('bingdts',111)
}
}
}
</script>
然后你就會發(fā)現(xiàn) textb 的方法觸發(fā)調(diào)用texta的bingdts 參數(shù)就會實(shí)現(xiàn)兄弟組件傳值
到此,關(guān)于“uni-app組件通信的方式是什么”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
網(wǎng)頁題目:uni-app組件通信的方式是什么
本文來源:http://www.rwnh.cn/article16/pgscgg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、搜索引擎優(yōu)化、虛擬主機(jī)、網(wǎng)站制作、ChatGPT、網(wǎng)站營銷
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)