Javascript 当将插槽视为作用域插槽时,为什么此激活器文本会消失?
Vuetify的Javascript 当将插槽视为作用域插槽时,为什么此激活器文本会消失?,javascript,vue.js,vuetify.js,activator,Javascript,Vue.js,Vuetify.js,Activator,Vuetify的v-list-groupactivator文本在使用新的Vue语法将其视为作用域插槽时消失(vs) 我分叉了Vuetify示例代码笔,并将其简化。我已经设置好了它,这样我就可以很容易地注释激活器是否使用作用域插槽。仅使用v-slot:activator时,activator文本明确显示 这是我的代码笔链接: 我用叉子叉出的原笔:) 我找到钢笔的文档页面: 我没有注意到错误或警告。我希望在使用v-slot:activator=“{on}”和v-on=“on”时会显示激活器文本,如文
v-list-group
activator文本在使用新的Vue语法将其视为作用域插槽时消失(
vs
)
我分叉了Vuetify示例代码笔,并将其简化。我已经设置好了它,这样我就可以很容易地注释激活器是否使用作用域插槽。仅使用v-slot:activator
时,activator文本明确显示
这是我的代码笔链接:
我用叉子叉出的原笔:)
我找到钢笔的文档页面:
我没有注意到错误或警告。我希望在使用v-slot:activator=“{on}”
和v-on=“on”
时会显示激活器文本,如文档所示。将=“{on}”
放在末尾会将插槽使用情况从正常插槽更改为范围插槽。我不知道为什么您认为v-list-group
的activator
插槽可以用作作用域插槽,我在文档中没有发现任何东西表明它支持这一点
如果我们看一下v-list-group
的代码,我们会看到:
activator
作为普通插槽通过this.$slots.activator
访问。这仅在使用普通插槽时有效
将其与其他组件(如v-menu
)进行对比。v-menu
组件也有一个activator
插槽,但它支持将其用作普通插槽或作用域插槽
请注意,这是如何显式引用this.$slots.activator
和this.$scopedSlots.activator
。在这种情况下,此插槽的实际包含在可激活的
mixin中:
您会注意到,这确实支持将on
值传递到作用域插槽。这里使用了一个名为getSlot
的助手,它可以消除普通插槽和范围插槽之间的差异:
所有这些都不适用于只支持普通插槽的
v-list-group
。我想我希望插槽能够像对待v-menu
一样,在对象上传递,但情况似乎并非如此。我在里面添加了v-tooltip
,以测试我的用例,一切都正常。谢谢你在“裙子”上纠正我!