table中添加单选,在table的列数据中添加render函数
// 首先在data中定义
currentid:''
// 然后在table的列数据的第一列添加如下代码
{
title: '选择',
key: 'choose',
width: 70,
align: 'center',
render: (h, params) => {
console.log(params)
let id = params.row._index;//params是一个对象,row中会有固定的值,当前项目是_index
let flag = false;
if (this.currentid === id) {
flag = true
} else {
flag = false
}
let self = this
return h('div', [
h('Radio', {
props: {
value: flag
},
on: {
'on-change': () => {
self.currentid = id
}
}
})
])
}
},
这时就有个问题,想要点击行任意一处就选中本行或切换选中,可以用以下方法解决
<Table @on-row-click="clickRow"></Table>
clickRow (row, index) {
this.currentid = index
}
复选的方法iview中都有,在这个说下怎么点击行中任意地方选中本行
使用场景:table中的复选框只能在点击框框的时候才能选中,为了更方便点击行任意一处即可选中,需要用到table组件API中的on-row-click
on-row-click可接受两个参数:当前行的数据,index
<Table ref="selection" @on-row-click="clickRow"></Table>
clickRow (row, index) {
this.$refs.selection.toggleSelect(index)
}