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

首頁 > 語言 > JavaScript > 正文

vue 自定義組件 v-model雙向綁定、 父子組件同步通信的多種寫法

2024-05-06 15:24:06
字體:
來源:轉載
供稿:網友

上篇文章給大家介紹了淺析Vue自定義組件的v-model,大家可以參考下。接下來通過本文給大家介紹vue 自定義組件 v-model雙向綁定、 父子組件同步通信的多種寫法,具體詳情如下所示:

父子組件通信,都是單項的,很多時候需要雙向通信。方法如下:

  1、父組件使用:msg.sync="aa"  子組件使用$emit('update:msg', 'msg改變后的值xxx')

  2、父組件傳值直接傳對象,子組件收到對象后可隨意改變對象的屬性,但不能改變對象本身。

  3、父組件使用: v-model

  第一種曾經被廢除過,由于維護成本的原因被刪掉,但經過證實,確實有存在的意義,又被加上。

  第一種:

父組件: 

<template> <div>  <aa class="abc" :snycTest.sync="test" ></aa>   {{'外面的值:' + test}}  <button @click="fn">   外面改變里面  </button>   </div></template><script>import aa from './test.vue' export default {  data () {   return {    test: ''   }  },  methods: {   fn () {    this.test += 1   }  },  components:{   aa  } }</script>

子組件:

<template> <div>  <ul>   <li>{{'里面的值:'+ snycTest}}</li>   <button @click="fn2">里面改變外面</button>  </ul> </div></template><script> export default {  props: {   snycTest: ''  },  methods: {   fn2 () {    this.$emit('update:snycTest', this.snycTest+1) //這兒是關鍵 update:snycTest 自定義事件會告訴父組件將父組件的 test值改為this.snycTest+1,并傳回給子組件。} } } </script>

v-model寫法一:

父組件:

<template> <div>  <aa class="abc" v-model="test" ></aa> // 組件中使用v-model   {{'外面的值:' + test}} // 這兒試驗test與內部msg值為雙向綁定關系  <button @click="fn">   外面改變里面  </button>   </div></template><script>import aa from './test.vue' export default {  data () {   return {    test: ''   }  },  methods: {   fn () {    this.test += 1    }  },  components:{   aa  } }</script>

子組件寫法一:

<template> <div>  <ul>   <li>{{'里面的值:'+ msg}}</li>   <button @click="fn2">里面改變外面</button>  </ul> </div></template><script> export default {  model: {  // 使用model, 這兒2個屬性,prop屬性說,我要將msg作為該組件被使用時(此處為aa組件被父組件調用)v-model能取到的值,event說,我emit ‘cc' 的時候,參數(shù)的值就是父組件v-model收到的值。   prop: 'msg',   event: 'cc'  },  props: {   msg: ''  },  methods: {   fn2 () {    this.$emit('cc', this.msg+2)   }  } }</script>            
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 沂源县| 临湘市| 庆云县| 漾濞| 中牟县| 黑龙江省| 托里县| 家居| 连云港市| 仁寿县| 松滋市| 龙南县| 随州市| 钟山县| 益阳市| 南康市| 万荣县| 江孜县| 新乡县| 沭阳县| 通榆县| 仲巴县| 启东市| 拉萨市| 岳普湖县| 石城县| 电白县| 博湖县| 伊金霍洛旗| 依兰县| 嘉荫县| 奈曼旗| 屯门区| 阿拉善盟| 宝丰县| 镇安县| 津南区| 张家川| 大兴区| 武汉市| 砀山县|