antd中table展開行默認展示,且不需要前邊的加號操作
如下所示:

前邊不顯示+,并且詳細信息默認展開
在table中配置
<Table
expandedRowKeys={this.store.chargeTableData.map(item => item.key)} //展開的行
expandIconAsCell={false}
expandIconColumnIndex={-1}
bordered //展示邊框
defaultExpandAllRows={true} //初始時展開所有行
pagination={{ pageSize: 5 }} //分頁器
expandedRowRender={this.expandedRowRender} //額外展開的行
columns={columns} //數據
dataSource={this.store.chargeTableData} //數據數組
/>
補充知識:antd Table 利用自己生成cell結合expandedRowKeys配置,實現任意cell控制展開列
因為項目需要,antd實現一個形如這樣的表格

但是奈何翻了好幾遍api文檔并沒有發(fā)現這樣的東西,只好自己改造了,
首先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}
/>
實現了隱藏自帶按鈕、并確定了控制展開行的數組,
接下來就是控制數組了,
先綁定下方法
onClick={()=>this.expandTable(row)}
然后 是點擊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] = '關閉'
}
this.setState({
expandArray:filtered,
})
最后控制數組的方法
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展開行默認展示,且不需要前邊的加號操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Vue中@click.stop和@click.prevent實例詳解
當我們使用Vue.js開發(fā)前端應用時,經常會在模版中使用@click指令來響應用戶的點擊事件,這篇文章主要給大家介紹了關于Vue中@click.stop和@click.prevent的相關資料,需要的朋友可以參考下2024-04-04
使用vue自定義指令開發(fā)表單驗證插件validate.js
今天就來介紹一下如何利用vue的自定義指令directive來開發(fā)一個表單驗證插件的過程,需要的朋友可以參考下2019-05-05
vue-router4動態(tài)路由刷新404/白屏的解決
本文主要介紹了vue-router4動態(tài)路由刷新404/白屏的解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-04-04

