【发布时间】:2021-04-10 14:34:43
【问题描述】:
我有一个数组,格式如下。
let tableData = [
{
'id': 123,
'subArray': [
{ 'subId': 'ABC123', 'name': 'subElement1', 'ischecked': true },
{ 'subId': 'DEF123', 'name': 'subElement11', 'ischecked': false }
]
},
{
'id': 456,
'subArray': [
{ 'subId': 'ABC456', 'name': 'subElement2', 'ischecked': true },
{ 'subId': 'DEF456', 'name': 'subElement22', 'ischecked': true }
]
},
{
'id': 789,
'subArray': [
{ 'subId': 'ABC789', 'name': 'subElement3', 'ischecked': false },
{ 'subId': 'DEF789', 'name': 'subElement33', 'ischecked': true }
]
},
{
'id': 121,
'subArray': [
{ 'subId': 'ABC012', 'name': 'subElement4', 'ischecked': false },
{ 'subId': 'DEF012', 'name': 'subElement44', 'ischecked': true }
]
}
]
我正在使用 Buefy 表以以下方式呈现数据。
<b-table :data="tableData">
<template slot-scope="props">
<b-table-column label="ID" field="id"> {{ props.row.id }}</b-table-column>
<b-table-column label="SubArray" field="subArray">
<span v-for="sub in props.row.subArray" :key="sub.subId">
<b-checkbox v-model="sub.isChecked">{{ sub.name }}</b-checkbox>
</span>
</b-table-column>
</template>
</b-table>
问题:当我选中任何一个复选框时,它会显示我们单击的复选框 Checked,但数组中所有行的 'isChecked' 值都更新为“True”。
示例:如果我选中“subElement22”复选框,那么 subElement11、subElement33 和 subElement44 也会更新。
预期:当我点击任何复选框时,与该行相关的值应该更新而不是其他。
如何绑定 v-modal ?
谢谢。
【问题讨论】: