vue3父组件和子组件的方法调用
时间: 2023-11-09 22:01:37 浏览: 105
在Vue3中,可以通过`ref`和`emit`来实现父组件调用子组件的方法,以及子组件调用父组件的方法。
父组件调用子组件的方法:
1. 在子组件中使用`ref`定义一个引用,例如:`const childRef = ref(null);`
2. 在子组件的模板中,给需要调用的元素添加`ref="childRef"`属性。
3. 在父组件中,使用`setup()`函数获取子组件的引用:`const childComponent = ref(null);`
4. 在父组件中,使用`onMounted()`钩子函数获取子组件的引用:`onMounted(() => { childComponent.value = childRef.value; });`
5. 在父组件中,即可通过`childComponent.value.子组件方法名()`来调用子组件的方法。
子组件调用父组件的方法:
1. 在父组件中,定义一个方法,并通过`emit`暴露出去,例如:`const parentMethod = () => { emit('parentMethod'); };`
2. 在子组件中,通过`inject`获取父组件的方法:`const parentMethod = inject('parentMethod');`
3. 在子组件中,即可通过`parentMethod()`来调用父组件的方法。
阅读全文