VUE中,使用iview table组件,用代码设置某一行数据选中

6 篇文章 0 订阅

在项目开发中,需要操作表格,使用的是iview的table组件,操作需求如下:
1、表格需要显示复选框,可以进行单选和全选
2、选择某一行数据,复选框选中,取得当前行数据进行操作
3、更新当前选中行的数据

遇到的问题:
当前选择行数据更新后,当前行的复选框不能显示选中~~

解决办法:

1、修改表格某行数据的时候,添加属性 _checked = true 表示选中改行,_disabled = true,表示禁用该行,代码如下

   // 取得更新后的行数据
   var updatedRowData = getUpdatedRowDate();
   // 取得更新行在表格数据中的索引
   var index = getUpdatedRowIndex();
   // 重点:为更新行添加属性_checked = true
   updatedRowData._checked = true;
  //更新表格数据
  this.$set(this.tableDatas,index,updatedRowData)
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以通过以下步骤来删除 Vue + iView 表格的某一行数据: 1. 在表格添加一个“删除”列,并在该列添加一个“删除”按钮,例如,可以使用如下代码: ```html <template> <Table :columns="columns" :data="tableData"> <template slot="operations" slot-scope="{row}"> <Button type="error" @click="deleteRow(row)">删除</Button> </template> </Table> </template> <script> export default { data() { return { columns: [ { title: '姓名', key: 'name' }, { title: '年龄', key: 'age' }, { title: '性别', key: 'gender' }, { title: '操作', slot: 'operations', align: 'center' }, ], tableData: [ { name: '张三', age: 18, gender: '男' }, { name: '李四', age: 20, gender: '女' }, { name: '王五', age: 22, gender: '男' }, ], }; }, methods: { deleteRow(row) { const index = this.tableData.indexOf(row); this.tableData.splice(index, 1); }, }, }; </script> ``` 在上面的代码,我们在表格添加了一个名为“operations”的插槽,该插槽对应了一个“删除”按钮,当用户点击该按钮时,会触发 `deleteRow()` 方法,该方法会从表格数据删除指定的行。 2. 最后,如果你想要删除某一行数据时,弹出一个确认框,让用户确认是否删除,可以使用 iView 的 `Modal` 对话框组件,例如,可以使用如下代码: ```html <template> <Table :columns="columns" :data="tableData"> <template slot="operations" slot-scope="{row}"> <Button type="error" @click="showDeleteConfirm(row)">删除</Button> </template> </Table> </template> <script> import { Modal } from 'iview'; export default { data() { return { columns: [ { title: '姓名', key: 'name' }, { title: '年龄', key: 'age' }, { title: '性别', key: 'gender' }, { title: '操作', slot: 'operations', align: 'center' }, ], tableData: [ { name: '张三', age: 18, gender: '男' }, { name: '李四', age: 20, gender: '女' }, { name: '王五', age: 22, gender: '男' }, ], }; }, methods: { showDeleteConfirm(row) { Modal.confirm({ title: '确认删除', content: `是否删除 ${row.name}?`, onOk: () => { const index = this.tableData.indexOf(row); this.tableData.splice(index, 1); }, }); }, }, }; </script> ``` 在上面的代码,我们使用iView 的 `Modal` 对话框组件,当用户点击“删除”按钮时,会弹出一个确认框,让用户确认是否删除该行数据。如果用户点击“确定”按钮,则会从表格数据删除该行数据
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值