Vuejs - 使用模板将父组件道具传递给子元素
Vuejs - Passing parent component props to child element with the template
我要解决的问题是我希望子组件在 v 扩展面板为 expanded/contracted 时做出反应。
通常这是微不足道的,但是,我试图通过范围插槽将 vuetify 组件中的道具的值传递给组件。因为我在一个循环中渲染子组件,所以我不能只使用数据来绑定道具。
<v-expansion-panel expand>
<v-expansion-panel-content
v-for="item in this.items"
:key="item.key">
<div slot="header">
content
</div>
<slot :items="item.children"></slot>
</v-expansion-panel-content>
</v-expansion-panel>
v-expansion-panel-content 有一个名为 value 的属性。我需要将该道具绑定到插槽。理想情况下,我想实现这样的目标:
<slot :items="item.children" :panelValue="value"></slot>
如有任何想法,我们将不胜感激。
我已经解决了这个问题,但不是很理想。
<v-expansion-panel expand>
<v-expansion-panel-content
v-for="item in this.items"
:key="item.key"
v-model="item.isOpen">
<div slot="header">
content
</div>
<slot :items="item.children" :isVisible="item.isOpen"></slot>
</v-expansion-panel-content>
我要解决的问题是我希望子组件在 v 扩展面板为 expanded/contracted 时做出反应。
通常这是微不足道的,但是,我试图通过范围插槽将 vuetify 组件中的道具的值传递给组件。因为我在一个循环中渲染子组件,所以我不能只使用数据来绑定道具。
<v-expansion-panel expand>
<v-expansion-panel-content
v-for="item in this.items"
:key="item.key">
<div slot="header">
content
</div>
<slot :items="item.children"></slot>
</v-expansion-panel-content>
</v-expansion-panel>
v-expansion-panel-content 有一个名为 value 的属性。我需要将该道具绑定到插槽。理想情况下,我想实现这样的目标:
<slot :items="item.children" :panelValue="value"></slot>
如有任何想法,我们将不胜感激。
我已经解决了这个问题,但不是很理想。
<v-expansion-panel expand>
<v-expansion-panel-content
v-for="item in this.items"
:key="item.key"
v-model="item.isOpen">
<div slot="header">
content
</div>
<slot :items="item.children" :isVisible="item.isOpen"></slot>
</v-expansion-panel-content>