国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

vue子組件使用自定義事件向父組件傳遞數據

2019-11-19 16:28:10
字體:
來源:轉載
供稿:網友

使用v-on綁定自定義事件可以讓子組件向父組件傳遞數據,用到了this.$emit(‘自定義的事件名稱',傳遞給父組件的數據)

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="../js/vue.js"></script></head><body><div id="app"><parent-component></parent-component></div><template id="parent-component"><div> <p>總數是{{total}}</p> <child-component @increment="incrementTotal"></child-component> <!--@increment是子組件this.$emit('increment'自定義的事件用來告訴父組件自己干了什么事 然后會觸發父子間incrementTotal的方法來更新父組件的內容)--></div></template><template id="child-component"> <button @click="increment()">{{mycounter}}</button></template><script> var child=Vue.extend({  template:"#child-component",  data:function () {   return {    mycounter:0   }  },  methods:{   increment:function(){    this.mycounter=10;    this.$emit("increment",this.mycounter);//把this.mycounter傳遞給父組件   }  } }) var parent=Vue.extend({  data:function () {   return {    total:0   }  },  methods:{   incrementTotal:function(newValue){    this.total+=newValue;   }  },  template:"#parent-component",  components:{   'child-component':child  } }) var vm=new Vue({  el:"#app",  components:{   'parent-component':parent  } })</script></body></html>

@increment是子組件this.$emit('increment'自定義的事件,newValue)用來告訴父組件自己干了什么事

同時還可以傳遞新的數據給父組件

然后會觸發父子間incrementTotal的方法來更新父組件的內容)。

這里需要注意幾個點:

1.

圖中紅色圈中的部分是對應的,子組件在自己的methods方法里面寫自己的事件實現,然后再父組件里面寫字組件時給子組件綁定上methods方法里面的

事件名稱,要一一對應

這里自定義事件里面的要寫父組件的方法名,父組件里面定義該方法。

父組件里面的方法可以接收子組件this.$emit('increment',this.mycounter);傳遞過來的數值:this.mycounter,

到父組件的方法里面就是newValue參數,這樣就實現了子組件向父組件傳遞數據

以上所述是小編給大家介紹的vue子組件使用自定義事件向父組件傳遞數據,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 华池县| 沁源县| 万源市| 上犹县| 庐江县| 三明市| 娱乐| 响水县| 慈溪市| 屏山县| 永春县| 从江县| 三台县| 旅游| 平潭县| 溧阳市| 武城县| 和静县| 墨玉县| 兴仁县| 五指山市| 瓦房店市| 政和县| 黔江区| 徐闻县| 水城县| 泰和县| 中山市| 通道| 柏乡县| 兴化市| 铜山县| 南通市| 静乐县| 绥棱县| 延安市| 讷河市| 安乡县| 桃园县| 隆林| 渭源县|