今天在使用vue的h()函数时,直接给第三个参数传入了一个h()函数,虽然能够运行起来,但是控制台报了一串警告给我。
通过查阅官方文档,确认h()函数第三个参数能接收的类型有Children | Slot | Slots
三种, 其中:
Children
类型又对应了string | number | boolean | VNode | null | Children[]
这些类型
Slot
类型对应的是一个函数,其中返回的是Children
Slots
类型对应的是一个对象,里面是指定的插槽
由上图,还可以看到h()函数返回的是一个VNode,所以我在使用时,给第三个参数传入h()函数是依然能够运行的,但是会有警告,警告的意思是性能问题。
最终我在第三个参数传入一个函数来返回一个h()函数执行结果,就不再警告了
虽然解决了,但是不明白第三个参数直接传入h函数对vue运行有什么影响,新手小白,能否有大神指导下
原文:https://juejin.cn/post/7099293570590310414