vue3中的this.$slot
的数据结构都被破坏了
在vue3中 this.$slot
将所有的插槽作为函数公开
vue2中
this.$slot.default
this.$slot.extra
vue3中
this.$slot.default && this.$slot.default()
this.$slot.extra && this.$slot.extra()
vue3中去掉了$scopeSlot API
,所有的插槽都可以通过$slot
访问
在vue2的项目中 this.$slot
的结构
vue3的项目中 this.$slot
的结构
总结
vue2 | vue3 |
---|---|
this.$slots.default[0].data.attrs | this.$slots.default()[0].props |
this.$slots.default[0].data.scopedSlots | this.$slots.default()[0].children |