【element-ui】element的checkbox更新绑定的组数时,原先v-model绑定为true的被保留了下来没有进行刷新?

如题,如何重置选中状态?
业务场景:选中表格第一条数据后切换装修位置重新请求接口,第一条数据还是选中状态,但这条数据的参数是false

表格代码:

<el-table :data="tableData" border highlight-current-row style="width: 100%;margin-bottom: 10px">

<el-table-column width="55" align="center">

<template scope="scope">

<el-checkbox :checked="scope.row.check" @change="handleSelectionChange(scope.row)"></el-checkbox>

</template>

</el-table-column>

<el-table-column prop="name" label="名称" align="center"></el-table-column>

<el-table-column prop="unit_name" label="单位" align="center"></el-table-column>

<el-table-column prop="color" label="颜色" align="center"></el-table-column>

<el-table-column label="数量" align="center" width="130">

<template scope="scope">

<el-input-number v-model="scope.row.nums" :min="0" style="width: 100%" size="small" @change="numberChange"></el-input-number>

</template>

</el-table-column>

</el-table>

图片描述

有数据的情况下:
图片描述

js代码:

//获取装修材料

getUserGoodsList() {

let params = {

"access-token": this.token,

"classify_id": this.goodsType.position

}

getGoodsList(params).then(res => {

let _this = this

// console.log(res.data)

_this.tableData = res.data.items

if (_this.tableData) {

_this.tableData.forEach(item => {

item.check = false

})

}

})

}

//勾选

handleSelectionChange(row) {

if (row.check == true) {

row.check = false

} else {

row.check = true

}

},

回答:

表格上加一个table属性

<el-table :data="tableData" border highlight-current-row v-if="table">

···

</el-table>

获取数据的时候隐藏显示一下就刷新dom视图加载了

//获取装修材料

getUserGoodsList() {

let params = {···}

this.table = false

getGoodsList(params).then(res => {

···

this.table = true

})

}

回答:

这样写

clipboard.png

_this.tableData = res.data.items

if (_this.tableData) {

_this.tableData.map((v,i) =>{

v.check = false

_this.tableData.$set(i, {

v: v

})

})

}

以上是 【element-ui】element的checkbox更新绑定的组数时,原先v-model绑定为true的被保留了下来没有进行刷新? 的全部内容, 来源链接: utcz.com/a/151658.html

回到顶部