vue實(shí)現(xiàn)父子組件之間的通信以及兄弟組件的通信功能示例
本文實(shí)例講述了vue實(shí)現(xiàn)父子組件之間的通信以及兄弟組件的通信功能。分享給大家供大家參考,具體如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>www.dhdzp.com vue父子組件通信、兄弟組件通信</title>
<style>
*{
margin: 0;
padding: 0;
list-style: none;
}
table{
text-align: center;
margin:0 auto;
}
div{
text-align: center;
}
</style>
</head>
<body>
<div id="app">
<table border="1" cellpadding="0" cellspacing="0">
<tr><td colspan="3">父組件數(shù)據(jù)</td></tr>
<tr><td>name</td><td>{{name}}{{ff()}}</td><td><input type="text" v-model="name"></td></tr>
<tr><td>age</td><td>{{age}}{{ff()}}</td><td><input type="text" v-model="age"></td></tr>
</table>
<v-son :son-name="name" :son-age="age" @sza="gg"></v-son>
</div>
<template id="son">
<div>
<button @click="sonChange">子組件按鈕</button>
<table border="1" cellpadding="0" cellspacing="0">
<tr><td colspan="3">子組件數(shù)據(jù)</td></tr>
<tr><td>name</td><td>{{sonName}}</td><td><input type="text" v-model="sonName"></td></tr>
<tr><td>age</td><td>{{sonAge}}</td><td><input type="text" v-model="sonAge"></td></tr>
</table>
<g-son :g-name="sonName" :g-age="sonAge"></g-son>
</div>
</template>
<template id="vgson">
<div>
<button @click="gchan">孫子組件按鈕</button>
<table border="1" cellpadding="0" cellspacing="0">
<tr><td colspan="3">孫子組件數(shù)據(jù)</td></tr>
<tr><td>name</td><td>{{gName}}</td><td><input type="text" v-model="gName"></td></tr>
<tr><td>age</td><td>{{gAge}}</td><td><input type="text" v-model="gAge"></td></tr>
</table>
</div>
</template>
</body>
<script src="https://cdn.bootcss.com/vue/2.4.4/vue.min.js"></script>
<script>
var bus=new Vue();
const app=new Vue({
el:"#app",
data:{
name:"keep",
age:"28"
},
methods:{
gg(val1,val2){
this.name=val1
this.age=val2
},
ff(){
bus.$on("suibian", (val1,val2)=> {
this.name=val1;
this.age=val2
})
}
},
components:{
"vSon":{
template:"#son",
methods:{
sonChange(){
this.$emit("sza",this.sonName,this.sonAge)
}
},
props:["sonName","sonAge"],
components:{
"gSon":{
template:"#vgson",
props:["gName","gAge"],
methods:{
gchan(){
bus.$emit("suibian",this.gName,this.gAge);
},
}
}
},
}
}
})
</script>
</html>
這里使用在線HTML/CSS/JavaScript代碼運(yùn)行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼,可得如下運(yùn)行效果:

希望本文所述對大家vue.js程序設(shè)計(jì)有所幫助。
相關(guān)文章
validate?注冊頁的表單數(shù)據(jù)校驗(yàn)實(shí)現(xiàn)詳解
這篇文章主要為大家介紹了validate?注冊頁的表單數(shù)據(jù)校驗(yàn)實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09
vue3?elementPlus?table實(shí)現(xiàn)列寬可拖拽功能
這篇文章主要介紹了vue3?elementPlus?table實(shí)現(xiàn)列寬可拖拽功能,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-08-08
vue3.0中setup中異步轉(zhuǎn)同步的實(shí)現(xiàn)
這篇文章主要介紹了vue3.0中setup中異步轉(zhuǎn)同步的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-06-06
Vue3 elementUI 中 date-picker 使用過程遇到坑
這篇文章主要介紹了Vue3 elementUI 中 date-picker 使用過程遇到坑,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2023-10-10
vue項(xiàng)目中頁面底部出現(xiàn)白邊及空白區(qū)域錯(cuò)誤的問題
這篇文章主要介紹了vue項(xiàng)目中頁面底部出現(xiàn)白邊及空白區(qū)域錯(cuò)誤的問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08
安裝vue3開發(fā)者工具但控制臺沒有顯示出vue選項(xiàng)的解決
這篇文章主要介紹了安裝vue3開發(fā)者工具但控制臺沒有顯示出vue選項(xiàng)的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10
vue.extend與vue.component的區(qū)別和聯(lián)系
這篇文章主要介紹了vue.extend與vue.component的區(qū)別和聯(lián)系,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2018-09-09
vue.js框架實(shí)現(xiàn)表單排序和分頁效果
這篇文章主要為大家詳細(xì)介紹了vue.js框架實(shí)現(xiàn)表單排序和分頁效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-08-08
Vue使用el-table實(shí)現(xiàn)自適應(yīng)列寬
這篇文章主要為大家詳細(xì)介紹了Vue使用el-table實(shí)現(xiàn)自適應(yīng)列寬,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01

