antd?vue?表格rowSelection選擇框功能的使用方式
antd vue 表格rowSelection選擇框功能
html部分:
<a-table ? ? ? ? :columns="columns" ? ? ? ? :data-source="showList" ? ? ? ? :row-selection="rowSelection" ? ? ? ? :rowKey="record=>record.id" ? ? ? />
功能部分:
computed: { ? ? rowSelection () { ? ? ? return { ? ? ? // type: 'radio', // 是否為單選 ? ? ? ? selectedRowKeys: this.dataListSelectionKeys, ? ? ? ? onChange: (selectedRowKeys, selectedRows, event) => { ? ? ? ? ??? ?//selectedRowKeys 為你點擊選框時這一頁選中的所有key ? ? ? ? ??? ?//selectedRows 為你點擊選框時這一頁選中的所有數(shù)據(jù) ? ? ? ? }, ? ? ? ? onSelect: (record, selected, selectedRows, nativeEvent) => { ? ? ? ? ? //record 點擊某一條的所有數(shù)據(jù) ? ? ? ? ? //selected 點擊的一條是否被選中 ? ? ? ? }, ? ? ? ? onSelectAll: (selected, selectedRows, changeRows) => { ? ? ? ? ? //selected 點擊全選是否選中 ? ? ? ? ? //selectedRows 點擊全選判斷所有的選中數(shù)據(jù) ? ? ? ? ? //changeRows 所有改變選中狀態(tài)的數(shù)據(jù) ? ? ? ? }, ? ? ? ? getCheckboxProps: record => ({ ? ? ? ? ? props: { ? ? ? ? ? ? // 全部默認禁止選中 ? ? ? ? ? ? // disabled: true, ? ? ? ? ? ? // 某幾項默認禁止選中(R: 當(dāng)state等于1時) ? ? ? ? ? ? // disabled: record.state == 1, ? ? ? ? ? ? // 某幾項默認選中(R: 當(dāng)state等于1時) ? ? ? ? ? ? defaultChecked: record.state === 1 ? ? ? ? ? } ? ? ? ? }) ? ? ? } ? ? } ? }
Antd Table組件rowSelection方法的一些坑
當(dāng)table組件多選時,會將所有的表格數(shù)據(jù)全部選中。
在組件中官網(wǎng)有提供rowSelection方法,可以讓Table的第一列成為聯(lián)動的選擇框以及通過rowSelection.selectedRowKeys來控制選項。
比較坑的是
selectedRowKeys控制的只是dataSource當(dāng)前的序號,必須加上rowKey={record =>record.userId},如果不加上會導(dǎo)致聯(lián)動的選擇框異常,rowKey的id可以自定義為dataSource中的某個值。
遇到問題:當(dāng)選擇某一行的數(shù)據(jù)事,它會全部選中,而且在onChange事件中的selectRowKeys的值為“[null]”,如下圖所示:
解決代碼如下
<Table rowSelection={{type:"checkbox",selectedRowKeys:selectedUserKeys, onChange:(selectedKeys,selectedRows) => selectedUserOnChange(selectedKeys,selectedRows)}} columns={slackColumns} dataSource={unApproved} pagination={false} scroll={{y:80}} size="small" rowKey={record => record.userId}/>
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue?前端路由工作原理hash與history的區(qū)別
這篇文章主要介紹了Vue?前端路由工作原理hash與history的區(qū)別,文章圍繞主題展開vue-router的工作原理的簡單介紹,感興趣的朋友可以學(xué)習(xí)一下2022-07-07vue2+tracking實現(xiàn)PC端的人臉識別示例
本文主要介紹了vue2+tracking實現(xiàn)PC端的人臉識別示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-05-05深入理解vue輸入框字符限制的優(yōu)化設(shè)計方案
限制輸入框字符是一項需要結(jié)合技術(shù)實現(xiàn)與用戶體驗的綜合設(shè)計,通過實時限制、提交校驗與性能優(yōu)化,開發(fā)者可以高效解決輸入限制問題,同時提升用戶滿意度和數(shù)據(jù)安全性,本文給大家介紹vue輸入框字符限制的優(yōu)化設(shè)計,感興趣的朋友跟隨小編一起看看吧2024-12-12Vue移動端下拉加載更多數(shù)據(jù)onload實現(xiàn)方法淺析
這篇文章主要介紹了Vue移動端下拉加載更多數(shù)據(jù)onload實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-02-02Vue3將虛擬節(jié)點渲染到網(wǎng)頁初次渲染詳解
這篇文章主要為大家介紹了Vue3將虛擬節(jié)點渲染到網(wǎng)頁初次渲染詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-03-03