<root>
<my-button @click="save()"/>
<my-form/>
</root>
my-form.vue
methods:{
save(){}
}
如何通過我的按鈕調用保存()從我的形式?Vue公司電話兄弟姐妹的方法
<root>
<my-button @click="save()"/>
<my-form/>
</root>
my-form.vue
methods:{
save(){}
}
如何通過我的按鈕調用保存()從我的形式?Vue公司電話兄弟姐妹的方法
您可以使用事件總線:
let EventBus = new Vue();
let MyButton= Vue.extend({
name: "my-button",
props: ["what"],
template: `
<button class="btn btn-md btn-success the-button" @click="save()">Sender: {{what}}</button>
`,
methods: {
save: function(){
EventBus.$emit("form.save", //pass payload here);
}
}
});
Vue.component("my-button", MyButton);
***my-form.vue:****
created(){
EventBus.$on('form.save', (payload)=>{
this.save(payload)
});
},
methods:{
save(payload) {}
}
兄弟姐妹是否也有父母子女關係? –
沒關係,只要你使用相同的EventBus,他們都聽相同的事件 – Tomer
的Emit和監聽事件,或使用Vuex。 https://vuejs.org/v2/guide/components.html#Non-Parent-Child-Communication – ceejayoz