el-table控制复选框最大选择个数

1,623 阅读1分钟

1.gif

  1. el-table 标签上添加
ref="multipleTable" @select="select" @select-all="selectAll"
  1. 以最大个数为2
const selectionMax = 2;
const select = (selections, row) => {
    console.log('当用户手动勾选数据行的 Checkbox 时触发的事件', selection, row);
    // 选择项大于2时
    if (selection.length > selectionMax) {
        // console.log('把数组的第一个元素从其中删除后', selection);
        let del_row = selections.shift();
        // 用于多选表格,切换某一行的选中状态,如果使用了第二个参数,则是设置这一行选中与否(selected 为 true 则选中)
        multipleTable.value.toggleRowSelection(del_row, false); 
    };
};
const selectAll = selections => {
    console.log('当用户手动勾选全选 Checkbox 时触发的事件', selections);
    // 选择项大于2时
    if (selections.length > selectionMax) {
        selections.length = selectionMax;
    };
};