我正在使用 vue-bootstrap。我尝试动态创建一个获取标题和数据的网格组件。由于我们不知道传递给组件的列数,因此我们应该检查传递的每个项目。
<template>
<b-table striped hover :items="items"></b-table>
<div v-for="title in items">
<template slot="title.key" slot-scope="data">
<input v-if="title.isActive" type="text" v-model="data.value">
<textarea v-else type="text" v-model="data.value"></textarea>
</template>
</div>
</b-table>
</template>
<script>
const items =[
{'label': 'Description', 'key': 'description'},
{'label': 'Name', 'key': 'name', 'isActive': true},
]
因此,如果 isActive 为真,则此模板应为 textarea(应使用 textarea 而不是 input 更改列)但是它不起作用,并且没有任何列更改 inputbox 和 textarea 并保留默认模板
你能帮忙解决这些问题吗?
谢谢
原文由 Can Cinar 发布,翻译遵循 CC BY-SA 4.0 许可协议
我认为你应该在 v-for 和 slot-scope 变量中分开
title
以避免混淆: