Antd 表格合并與賦值渲染

官方文檔合并列/行有一個(gè)關(guān)鍵屬性 rowSpan和colSpan

如圖:


render 中有一個(gè)默認(rèn)renderCOntent函數(shù),包含三個(gè)參數(shù)? value,row,index? 一般我們想合并幾行列 通過(guò)判定index==?來(lái)設(shè)置 colSpan /rowSpan的值為0? 就能成功合并(renderCOntent函數(shù)是默認(rèn)格式,不建議大改)

情景:

后端給了一個(gè)多維數(shù)組,首先要做的是遍歷數(shù)組,push到新數(shù)組里。原因是方便 antd表格數(shù)據(jù)渲染


獲取新數(shù)組

拿到新數(shù)組后,開(kāi)始合并表格列


別忘了 return !

特別提醒:新數(shù)組中的參數(shù)名要和表格中的dataIndex 一致!

做到這一步數(shù)據(jù)基本能渲染出來(lái),如果還想對(duì)數(shù)據(jù)進(jìn)行填寫(xiě)累加操作,那么需要植入Input組件? 使用onBlur函數(shù)方法

特別提醒:4.0版本onBlur?時(shí)不再修改選中值,且返回 React 原生的?event?對(duì)象? 我用的是3.16版本!


函數(shù)內(nèi)部

通過(guò)傳入的values(row是形參)? 進(jìn)行判定,不為undefined時(shí)則轉(zhuǎn)化為Number類型(input的值都是string,轉(zhuǎn)化后方便計(jì)算value值和fraction值)


注:dataSource是state中定義的數(shù)組,方便數(shù)據(jù)存取

slice() 方法可從已有的數(shù)組中返回選定的元素。

reduce() 方法接收一個(gè)函數(shù)作為累加器,數(shù)組中的每個(gè)值(從左到右)開(kāi)始縮減,最終計(jì)算為一個(gè)值。

注意:?reduce() 對(duì)于空數(shù)組是不會(huì)執(zhí)行回調(diào)函數(shù)的。


最后獲取的newData就是得到的累加總值。??

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容