一般情况,我们从父组件向子组件传递数据会用props,子组件事件想在父组件中执行可以用$emit。
现在父组件想用子组件里的一个方法,那怎么办?在父组件里首先得得到子组件对象,点的方式就可以使用子组件方法了,那如何得到子组件对象,必须用ref,简单例子如下:
<-- 子组件Food -->
methods: {
toggleFood () {
this.showFood = ! this.showFood;
}
}
<-- 父组件Goods -->
<template>
.....
<Food ref='food'/>
</template>
<script>
export default {
methods: {
showFood () {
this.$refs.food.toggleFood // 调用子组件里的toggleFood方法
}
}
}
</script>