同样传出去的是ref,为什么button组件中这样写就可以

来源:9-5 Dropdown编码第四部分

敲代码时长两年半的练习生

2023-08-17

https://img.mukewang.com/szimg/64de31720939e37807670083.jpg

传出去的时候ref不是会自动解包吗?那解包的时候它在setup中还没有挂载,为什么可以呢?

写回答

1回答

张轩

2023-08-18

同学你好

因为假如直接写一个函数的话,就是一个函数的赋值操作了,这个时候等于已经和响应式对象没有关系了,假如直接把整个响应式对象暴露出去的话就是没问题的。

defineExpose({
    show: () => tooltipRef.value?.show(),
    hide: () => tooltipRef.value?.hide(),
    ref: tooltipRef
})

// 可以直接
tooltipRef.value.ref.show()


0
0

进阶必学,打造媲美ElementPlus的组件库

Vue3.3 + TS4 ,自主打造媲美 ElementPlus 的组件库

482 学习 · 219 问题

查看课程