久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      vue傳值有哪8種方法

      傳值方式有:props和“$emit”、“$attrs”和“$listeners”、中央事件總線、v-model、provide和inject、“$parent”和“$children”、vuex和localStorage/session。

      vue傳值有哪8種方法

      本教程操作環(huán)境:windows7系統(tǒng)、vue2.9.6版,DELL G3電腦。

      對于vue來說,組件之間的消息傳遞是非常重要的,下面是我對組件之間消息傳遞的常用方式的總結(jié)。

      • props和$emit(常用)

      • $attrs和$listeners

      • 中央事件總線(非父子組件間通信)

      • v-model

      • provide和inject

      • $parent和$children

      • vuex

      1、props和$emit

      父組件向子組件傳遞數(shù)據(jù)是通過prop傳遞的,子組件傳遞數(shù)據(jù)給父組件是通過$emit觸發(fā)事件來做到的.

      Vue.component('child',{    data(){      return {        mymessage:this.message      }    },    template:`      <div>        <input type="text" v-model="mymessage" @input="passData(mymessage)"> </div>    `,    props:['message'],//設(shè)置props屬性值,得到父組件傳遞過來的數(shù)據(jù)    methods:{      passData(val){        //觸發(fā)父組件中的事件,向父組件傳值        this.$emit('getChildData',val)      }    }  })  Vue.component('parent',{    template:`      <div>        <p>this is parent compoent!</p>        <child :message="message" v-on:getChildData="getChildData"></child>      </div>    `,    data(){      return {        message:'hello'      }    },    methods:{      //執(zhí)行子組件觸發(fā)的事件      getChildData(val){        console.log(val)      }    }  })

      在上面的例子中,有父組件parent和子組件child。

        1)父組件傳遞了message數(shù)據(jù)給子組件,并且通過v-on綁定了一個getChildData事件來監(jiān)聽子組件的觸發(fā)事件;

        2)子組件通過props得到相關(guān)的message數(shù)據(jù),最后通過this.$emit觸發(fā)了getChildData事件

      2、$attrs和$listeners

      第一種方式處理父子組件之間的數(shù)據(jù)傳輸有一個問題:如果父組件A下面有子組件B,組件B下面有組件C,這時如果組件A想傳遞數(shù)據(jù)給組件C怎么辦呢? 如果采用第一種方法,我們必須讓組件A通過prop傳遞消息給組件B,組件B在通過prop傳遞消息給組件C;要是組件A和組件C之間有

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號