色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

vue emit原理

Vue中的事件$emit是一種觸發(fā)方式,可以將指定事件傳遞給父組件或嵌套組件,從而實(shí)現(xiàn)組件之間通信。

當(dāng)一個(gè)子組件需要將信息傳遞給父組件的時(shí)候,利用Vue實(shí)現(xiàn)的組件的事件和監(jiān)聽(tīng)機(jī)制可以非常方便實(shí)現(xiàn)。當(dāng)需要把其中一個(gè)組件的方法或變量傳遞給另一個(gè)組件的時(shí)候,可以使用emit和on兩個(gè)方法來(lái)實(shí)現(xiàn)。

//發(fā)送事件
this.$emit('自定義事件名稱(chēng)', 參數(shù));
//監(jiān)聽(tīng)事件
this.$on('自定義事件名稱(chēng)', function(參數(shù)){});

在子組件中,通過(guò)使用this.$emit(自定義事件名稱(chēng))來(lái)觸發(fā)組件事件,然后父組件通過(guò)在組件標(biāo)簽上綁定相應(yīng)的事件,并在方法中傳遞子組件傳遞回來(lái)的參數(shù)來(lái)接收事件。

//子組件
Vue.component('child-component', {
template: '',
methods: {
notify: function () {
this.$emit('send-msg', '這是一個(gè)來(lái)自子組件的消息')
}
}
})
//父組件
Vue.component('parent-component', {
template: '',
methods: {
receiveMsg: function (payload) {
console.log(payload) // 這是一個(gè)來(lái)自子組件的消息
}
}
})

通過(guò)上方代碼可以看到,在父組件中監(jiān)聽(tīng)了子組件傳遞回來(lái)的'msg'事件,然后接收返回的數(shù)據(jù),完成了組件之間的信息傳遞。