具体要实现的细节
- 点击表头的复选项,会进行全选;再次点击,会取消;
- 每次需要把选中该行的id传过去
- 切换分页的时候,需要有记忆功能:也就是翻页原本选中的不应该消失 。下方图片展示:(展示的是所有的选中的,切换分页的)
第一步添加对应的复选框
具体参照element官网示例
`<el-table :data="tableData" ref="multipleTable" tooltip-effect="dark" @selection-change="handleSelectionChange" v-loading="listLoading" border @cell-dblclick="celldblclick">`
* 1
`<el-table-column type="selection"></el-table-column>
<el-table-column prop="id" label="编号"></el-table-column>
<el-table-column prop="nameOne" label="名称1"></el-table-column>
<el-table-column prop="nameTwo" label="名称2"></el-table-column>
</el-table>`
* 1
* 2
* 3
* 4
* 5
* 6
* 7
* 8
* 9
第二步传id过去的话
这个是页面布局
`// 点击多选
handleSelectionChange(val) {
this.multipleSelection = val;
this.batchPassArr = [] //每次点击需清空原本数组的内容
this.multipleSelection.map(item => { //遍历数组,把id存进自定义的数组里
this.batchPassArr.push(item.id)
})
this.batchPassArr = this.batchPassArr.join(',')
},`
* 1
* 2
* 3
* 4
* 5
* 6
* 7
* 8
* 9
* 10
* 11
* 12
* 13
* 14
* 15
* 16
* 17
第三步对于切换分页
在表头那里<el-table :data="tableData" ref="multipleTable" tooltip-effect="dark" @selection-change="handleSelectionChange" v-loading="listLoading" border @cell-dblclick="celldblclick"></el-table>
加个:row-key="(row)=>{ return row.id}"
`也就是下面这个样子`
* 1
`<el-table :data="tableData" ref="multipleTable" :row-key="(row)=>{ return row.id}" tooltip-effect="dark" @selection-change="handleSelectionChange" v-loading="listLoading" border @cell-dblclick="celldblclick"></el-table>`
* 1
在自己加的里面加个
`:reserve-selection="true"`
* 1
也就是下面这个
`<el-table-column type="selection" :reserve-selection="true"></el-table-column>`
* 1
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。