问题
在<script setup>
中使用ref
获取子组件属性和方法时,获取不到,但是把setup单独写出来后就可以获取到了
//通过ref获取子组件的属性和方法
<Register ref="registerRef" />
.....
<script setup>
.....
const toggle = () => {
registerRef.value.toggle()
//获取不到子组件的toggle方法
}
</script>
解决
使用 script setup
的组件默认是关闭的
如果需要公开,需要在子组件内使用 defineExpose
编译器宏
//在子组件中暴露出toggle方法
....
defineExpose({
toggle
})
....