电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

ant design vue 表格table 默認勾選幾項的操作

瀏覽:6日期:2022-11-08 08:02:20

為什么我同樣的功能要用react 、vue 都寫一遍 ?

啊我真是不是閑的蛋疼啊(~ o ~)~zZ

在 ant design vue 中,表格的第一列是聯動的選擇框

截一張官方文檔圖,圖示最后一排就是禁用狀態

ant design vue 表格table 默認勾選幾項的操作

點擊 checkbox 會觸發onChange , 從而得到selectedRowKeys,selectedRowKeys就是選中的 key 數組。

onChange: (selectedRowKeys, selectedRows) => { console.log(`selectedRowKeys: ${selectedRowKeys}`, ’selectedRows: ’, selectedRows); },

默認禁用disable 某項時,官方文檔給出了例子:

rowSelection() { const { selectedRowKeys } = this; return { onChange: (selectedRowKeys, selectedRows) => { console.log(`selectedRowKeys: ${selectedRowKeys}`, ’selectedRows: ’, selectedRows); }, getCheckboxProps: record => ({ props: { disabled: record.name === ’Disabled User’, // Column configuration not to be checked name: record.name, } }), } }

主要是getCheckboxProps 里面的disabled 屬性控制的。

默認選中某項時,需要 getCheckboxProps 里面的defaultChecked 屬性控制:

業務場景:勾選了幾項保存之后,下次進來編輯還是需要展示之前勾選的項,這時候就用到了默認勾選的屬性

之前只貼了核心邏輯,好多人好像沒看懂,我把整體的都貼上來了。

核心代碼defaultChecked: selectedRowKeys.includes(record.id) 的思路就是所有表格里所有包含已選中項的id,都給他默認選中

data () { return { // ... record: ’’, rowSelection: { selectedRowKeys: [], onChange: this.onSelectChange } }, methods: { handleEdit (record) { //...省略我的業務邏輯 if (record) { //...省略我的業務邏輯 let selectedRowKeys = (record.roleIdList.length > 0 && record.roleIdList.split(’,’)) || []; this.rowSelection = { selectedRowKeys: selectedRowKeys, onChange: this.onSelectChange, getCheckboxProps: record => { return { props: {defaultChecked: selectedRowKeys.includes(record.id) } }; } }; } else { this.record = ’’; this.rowSelection = { selectedRowKeys: [], onChange: this.onSelectChange } } }, onSelectChange (selectedRowKeys) { // 去重 Array.from(new Set(arr)) this.rowSelection.selectedRowKeys = Array.from(new Set(selectedRowKeys)); } }

ant design vue 版本和 react 版本寫法略有不同,disabled 和 defaultChecked 都掛在了props 屬性下。

補充知識:Ant-Design-Pro中Table組件rowSelection方法的一些坑

如下所示:

<Table rowSelection={rowSelection} columns={columns} dataSource={data} />

在 <Table/> 組件中有 rowSelection={rowSelection} 方法,可以讓Table的第一列成為聯動的選擇框。

API中說到通過 rowSelection.selectedRowKeys 來控制選中項。比較坑的是,selectedRowKeys 控制的只是dataSource當前的順序編號。

一定要加上rowKey='id'或者rowKey={record => record.id},后來經過多次調試發現很多BUG都跟這個參數有關,不然會導致聯動的選擇框狀態異常。id可以自定義為dataSource中的某個值。

以上這篇ant design vue 表格table 默認勾選幾項的操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Vue
相關文章:
主站蜘蛛池模板: 叉车电池-叉车电瓶-叉车蓄电池-铅酸蓄电池-电动叉车蓄电池生产厂家 | 沥青车辙成型机-车托式混凝土取芯机-混凝土塑料试模|鑫高仪器 | 曙光腾达官网-天津脚手架租赁-木板架出租-移动门式脚手架租赁「免费搭设」 | 河南包装袋厂家_河南真空袋批发价格_河南服装袋定制-恒源达包装制品 | 荣事达手推洗地机_洗地机厂家_驾驶式扫地机_工业清洁设备 | 中细软知识产权_专业知识产权解决方案提供商 | 硫酸钡厂家_高光沉淀硫酸钡价格-河南钡丰化工有限公司 | 模型公司_模型制作_沙盘模型报价-中国模型网 | 骨灰存放架|骨灰盒寄存架|骨灰架厂家|智慧殡葬|公墓陵园管理系统|网上祭奠|告别厅智能化-厦门慈愿科技 | 机床主轴维修|刀塔维修|C轴维修-常州翔高精密机械有限公司 | 塑木弯曲试验机_铜带拉伸强度试验机_拉压力测试台-倾技百科 | 广东恩亿梯电源有限公司【官网】_UPS不间断电源|EPS应急电源|模块化机房|电动汽车充电桩_UPS电源厂家(恩亿梯UPS电源,UPS不间断电源,不间断电源UPS) | 机器视觉检测系统-视觉检测系统-机器视觉系统-ccd检测系统-视觉控制器-视控一体机 -海克易邦 | 山东集装箱活动房|济南集装箱活动房-济南利森集装箱有限公司 | 绿萝净除甲醛|深圳除甲醛公司|测甲醛怎么收费|培训机构|电影院|办公室|车内|室内除甲醛案例|原理|方法|价格立马咨询 | 扬尘监测_扬尘监测系统_带证扬尘监测设备 - 郑州港迪科技有限公司 | 吹田功率计-长创耐压测试仪-深圳市新朗普电子科技有限公司 | 专业深孔加工_东莞深孔钻加工_东莞深孔钻_东莞深孔加工_模具深孔钻加工厂-东莞市超耀实业有限公司 | 机构创新组合设计实验台_液压实验台_气动实训台-戴育教仪厂 | 医学动画公司-制作3d医学动画视频-医疗医学演示动画制作-医学三维动画制作公司 | 大流量卧式砂磨机_强力分散机_双行星双动力混合机_同心双轴搅拌机-莱州市龙跃化工机械有限公司 | 睿婕轻钢别墅_钢结构别墅_厂家设计施工报价 | 济南律师,济南法律咨询,山东法律顾问-山东沃德律师事务所 | 移动厕所租赁|移动卫生间|上海移动厕所租赁-家瑞租赁 | 山东氧化铁红,山东铁红-淄博科瑞化工有限公司 | 注浆压力变送器-高温熔体传感器-矿用压力传感器|ZHYQ朝辉 | 洁净化验室净化工程_成都实验室装修设计施工_四川华锐净化公司 | 济宁工业提升门|济宁电动防火门|济宁快速堆积门-济宁市统一电动门有限公司 | 氧化锆纤维_1800度高温退火炉_1800度高温烧结炉-南京理工宇龙新材料股份有限公司 | 我爱古诗词_古诗词名句赏析学习平台| 中开泵,中开泵厂家,双吸中开泵-山东博二泵业有限公司 | 网络推广公司_网络营销方案策划_企业网络推广外包平台-上海澜推网络 | 世界箱包品牌十大排名,女包小众轻奢品牌推荐200元左右,男包十大奢侈品牌排行榜双肩,学生拉杆箱什么品牌好质量好 - Gouwu3.com | PCB接线端子_栅板式端子_线路板连接器_端子排生产厂家-置恒电气 喷码机,激光喷码打码机,鸡蛋打码机,手持打码机,自动喷码机,一物一码防伪溯源-恒欣瑞达有限公司 假肢-假肢价格-假肢厂家-河南假肢-郑州市力康假肢矫形器有限公司 | 全自动贴标机-套标机-工业热风机-不干胶贴标机-上海厚冉机械 | 京马网,京马建站,网站定制,营销型网站建设,东莞建站,东莞网站建设-首页-京马网 | 深圳工程师职称评定条件及流程_深圳职称评审_职称评审-职称网 | 博客-悦享汽车品质生活 | 蒸压釜-陶粒板隔墙板蒸压釜-山东鑫泰鑫智能装备有限公司 | 色谱柱-淋洗液罐-巴罗克试剂槽-巴氏吸管-5ml样品瓶-SBS液氮冻存管-上海希言科学仪器有限公司 | 江门流水线|江门工作台|江门市伟涛行工业设备有限公司 |