我有一個 App.vue 的父容器。在 App.vue 我有一個<form></form>. 在該表單內部,我有一個子組件。在孩子中,我正在使用自定義按鈕組件。App.vue --> Parent UserInfo.vue --> Child BaseButton.vue --> Child in User.Info.vue
在 UserInfo.vue 我使用 BaseButton 像這樣:
<base-button @click="sendData" />
用戶資訊 -> 發送資料()
sendData() {
console.log('here')
this.$emit('send-data-to-parent');
},
App.vue 中的表單
<form @send-data-to-parent="submitThisForm">
<user-info/>
</form>
提交此表單()
submitThisForm() {
console.log('test')
}
當我單擊按鈕時,我console.log('here')在控制臺中看到了,但我沒有console.log('test')從App.vue submitThisForm()方法中看到。
為什么是這樣?
uj5u.com熱心網友回復:
@send-data-to-parent="submitThisForm"
在您的表單元素上。嘗試放入組件中,例如:
<form>
<user-info @send-data-to-parent="submitThisForm"/>
</form>
作業示例:
https://codesandbox.io/s/condescending-panna-sxx6k3?file=/src/components/Parent.vue
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/432659.html
