antd中table展開行默認(rèn)展示,且不需要前邊的加號(hào)操作
如下所示:
前邊不顯示+,并且詳細(xì)信息默認(rèn)展開
在table中配置
<Table expandedRowKeys={this.store.chargeTableData.map(item => item.key)} //展開的行 expandIconAsCell={false} expandIconColumnIndex={-1} bordered //展示邊框 defaultExpandAllRows={true} //初始時(shí)展開所有行 pagination={{ pageSize: 5 }} //分頁器 expandedRowRender={this.expandedRowRender} //額外展開的行 columns={columns} //數(shù)據(jù) dataSource={this.store.chargeTableData} //數(shù)據(jù)數(shù)組 />
補(bǔ)充知識(shí):antd Table 利用自己生成cell結(jié)合expandedRowKeys配置,實(shí)現(xiàn)任意cell控制展開列
因?yàn)轫?xiàng)目需要,antd實(shí)現(xiàn)一個(gè)形如這樣的表格
但是奈何翻了好幾遍api文檔并沒有發(fā)現(xiàn)這樣的東西,只好自己改造了,
首先table是這樣的
<Table columns={this.columns} dataSource={tableData} bordered pagination={false} size='small' expandIconAsCell={false} expandIconColumnIndex={-1} expandedRowRender={record=>this.expandedRowTable(record)} expandedRowKeys={this.state.expandArray} />
實(shí)現(xiàn)了隱藏自帶按鈕、并確定了控制展開行的數(shù)組,
接下來就是控制數(shù)組了,
先綁定下方法
onClick={()=>this.expandTable(row)}
然后 是點(diǎn)擊cell的方法
expandTable = row =>{ const filtered = this.state.expandArray const text = this.state.expandBtnText if(this.state.expandArray.includes(row.key)){ filtered.splice(filtered.findIndex(element => element === row.key),1 ); this.expandTdNum(parseInt(row.key,10),'reduce') text[parseInt(row.key,10)-1] = '詳情' }else{ filtered.push(row.key) this.expandTdNum(parseInt(row.key,10),'add') text[parseInt(row.key,10)-1] = '關(guān)閉' } this.setState({ expandArray:filtered, })
最后控制數(shù)組的方法
expandTdNum = (key,operation) =>{ let temp = 0 if(operation==='add'){ temp++ }else if(operation==='reduce'){ temp-- }else{ return false } if(key>0 && key<7){ this.setState({ firstTdNum:this.state.firstTdNum + temp, }) }else if(key>6 && key<10){ this.setState({ middleTdNum:this.state.middleTdNum + temp, }) }else if(key>9 && key<13){ this.setState({ lastTdNum:this.state.lastTdNum + temp, }) } }
以上這篇antd中table展開行默認(rèn)展示,且不需要前邊的加號(hào)操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
vuex模塊獲取數(shù)據(jù)及方法的簡(jiǎn)單示例
Vuex是一個(gè)專為Vue.js應(yīng)用程序開發(fā)的狀態(tài)管理模式,它采用集中式存儲(chǔ)管理應(yīng)用的所有組件的狀態(tài),并以相應(yīng)的規(guī)則保證狀態(tài)以一種可預(yù)測(cè)的方式發(fā)生變化,下面這篇文章主要給大家介紹了關(guān)于vuex模塊獲取數(shù)據(jù)及方法的相關(guān)資料,需要的朋友可以參考下2023-03-03Vue中@click.stop和@click.prevent實(shí)例詳解
當(dāng)我們使用Vue.js開發(fā)前端應(yīng)用時(shí),經(jīng)常會(huì)在模版中使用@click指令來響應(yīng)用戶的點(diǎn)擊事件,這篇文章主要給大家介紹了關(guān)于Vue中@click.stop和@click.prevent的相關(guān)資料,需要的朋友可以參考下2024-04-04vue2.x數(shù)組劫持原理的實(shí)現(xiàn)
這篇文章主要介紹了vue2.x數(shù)組劫持原理的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04使用vue自定義指令開發(fā)表單驗(yàn)證插件validate.js
今天就來介紹一下如何利用vue的自定義指令directive來開發(fā)一個(gè)表單驗(yàn)證插件的過程,需要的朋友可以參考下2019-05-05Vue.js使用computed屬性實(shí)現(xiàn)數(shù)據(jù)自動(dòng)更新
在Vue組件中,computed屬性是在組件的選項(xiàng)對(duì)象中聲明的,你可以把它們想象成組件的一個(gè)小功能,告訴Vue當(dāng)某些數(shù)據(jù)變化時(shí),如何更新界面,本文給大家介紹了Vue.js使用computed屬性實(shí)現(xiàn)數(shù)據(jù)自動(dòng)更新,需要的朋友可以參考下2024-06-06vue中使用console.log打印的實(shí)現(xiàn)
這篇文章主要介紹了vue中使用console.log打印的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-04-04vue項(xiàng)目中使用fetch的實(shí)現(xiàn)方法
這篇文章主要介紹了vue項(xiàng)目中使用fetch的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04vue-router4動(dòng)態(tài)路由刷新404/白屏的解決
本文主要介紹了vue-router4動(dòng)態(tài)路由刷新404/白屏的解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04vue + element ui實(shí)現(xiàn)播放器功能的實(shí)例代碼
這篇文章主要介紹了vue + element ui實(shí)現(xiàn)播放器功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04