首页 > 解决方案 > 动态折叠组件在 bootsrap-vue 中不起作用

问题描述

我正在尝试将 bootstrap-vue 中的折叠组件添加到我正在创建的表中(不是 bootstrap-vue 表,因为发现使用普通表更容易)

谁能告诉我为什么这会按预期工作(但显然会打开每个具有相同 ID 的折叠组件)

<td>
  <fa icon="bars" v-b-toggle.collapse2/>  
</td>
</tr>
 <td colspan="4">
  <b-collapse id="collapse2" >
    <b-card>
      <p class="card-text">Collapse contents Here</p>
    </b-card>
  </b-collapse>
 </td>

但这不起作用,我知道我在 case.id 中有一个唯一的 id

<td>
  <fa icon="bars" v-b-toggle="'collapse-' + case.id" />  
</td>
</tr>
 <td colspan="4">
  <b-collapse id="'collapse-' + case.id" >
    <b-card>
      <p class="card-text">Collapse contents Here</p>
    </b-card>
  </b-collapse>
 </td>

非常感谢

标签: vuejs2bootstrap-vue

解决方案


您没有在id="'collapse-' + case.id". 它可以v-b-toggle="'collapse-' + case.id"以防万一,因为如文档中所述

指令属性值应为绑定表达式

如果是属性,您应该使用以下之一:

胡子

<div id="item-{{ id }}"></div>

v-绑定

<div v-bind:id="'item-' + id"></div>

速记:

<div :id="'item-' + id"></div>

推荐阅读