Vue el-table 默認(rèn)展開(kāi)某一行的實(shí)例
Vue el-table 默認(rèn)展開(kāi)某一行
需求是在另外一個(gè)頁(yè)面選擇IP地址直接到這個(gè)頁(yè)面,并需要默認(rèn)展開(kāi)選擇的那一行
代碼如下:
<el-table ? border ? ref="expandTable" ? :data="nodeList"> ? <el-table-column type="expand"> ? ? <template slot-scope="props"> ? ? ? <el-form label-position="left" inline class="demo-table-expand"> ? ? ? ? <el-form-item label="節(jié)點(diǎn)IP:"> ? ? ? ? ? <span>{{ props.row.ip }}</span> ? ? ? ? </el-form-item> ? ? ? ? <el-form-item label="國(guó)家/城市:"> ? ? ? ? ? <span>{{ props.row.country }}</span> ? ? ? ? </el-form-item> ? ? ? ? <el-form-item label="購(gòu)買日期:"> ? ? ? ? ? <span>{{ props.row.purchaseDate }}</span> ? ? ? ? </el-form-item> ? ? ? ? <el-form-item label="到期日期:"> ? ? ? ? ? <span>{{ props.row.expiryDate }}</span> ? ? ? ? </el-form-item> ? ? ? </el-form> ? ? </template> ? </el-table-column> ? <el-table-column type="selection" width="55" align="center"/> ? <el-table-column label="序號(hào)" type="index" width="55" align="center"/> ? <el-table-column label="IP地址" align="center" prop="ip" width="150"/> ? <el-table-column label="國(guó)家/城市" align="center" prop="country" width="200"/> ? <el-table-column label="購(gòu)買日期" align="center" prop="purchaseDate" sortable width="160"/> ? <el-table-column label="到期日期" align="center" prop="expiryDate" sortable width="160"/> </el-table>
在獲取列表時(shí),調(diào)用展開(kāi)詳情,這只適用于一個(gè)表格
/** 查詢列表 */ getList() { ? this.nodeList = []; ? // 從URL中獲取的對(duì)應(yīng)的主鍵ID ? const rowId = this.$route.query && this.$route.query.rowId; ? listNode(this.queryParams).then(response => { ? ? this.nodeList = response.rows; ? ? this.total = response.total; ? ? // 查找rowId對(duì)應(yīng)的列表的下標(biāo)值 ? ? let index = this.nodeList.findIndex(item => item.id === this.rowId); ? ? if (index >= 0) { ? ? ? this.openDetail(this.nodeList[index]); ? ? } ? }); }, /** 展開(kāi)詳情 */ openDetail(row) { ? this.$nextTick(() => { ? ? this.$refs.expandTable.toggleRowExpansion(row, true); ? }); },
但是如果表格在for循環(huán)下,或者在多個(gè)tab下的話,那么this.$refs.expandTable就是一個(gè)數(shù)組,就需要使用下列方式:
openDetail(row) { ? this.$nextTick(() => { ? ? for (let i = 0; i < this.$refs.expandTable.length; i++) { ? ? ? this.$refs.expandTable[i].toggleRowExpansion(row, true); ? ? } ? }); },
el-table 高亮某一行
使用 highlight-current-row 屬性
el-table 加上 highlight-current-row 屬性。
<el-table ref='tTable' :data="dataList" highlight-current-row></el-table>
調(diào)用 setCurrentRow(row, true) 設(shè)置當(dāng)前行高亮,row為dataList里面的數(shù)據(jù)。
selectRow(row) { ? ? ?if (row) { ? ? ? ?this.$refs.tTable.setCurrentRow(row, true); ? ? ?} else { ? ? ? ?this.$refs.tTable.setCurrentRow(); ?// 取消高亮 ? ? ?} }
如果要改變默認(rèn)的高亮的顏色。這樣就把項(xiàng)目中所有el-table的高亮顏色都改了。
<style lang="scss"> ? ? .el-table__body tr.current-row>td { ? ? ? ? background: #453878 !important; ? ? } </style>
使用 row-class-name
<el-table ref='transcriptTable' :data="sentenceList" height="400" :row-class-name="transcriptTableRowClassName"></table>
? ? transcriptTableRowClassName({row, rowIndex}) { ? ? ? ? if (rowIndex === this.curSentenceRowIndex) { ? ? ? ? ? ? return 'speak-row'; ? ? ? ? } ? ? ? ? return ''; ? ? },
如果是當(dāng)前行時(shí),返回不同的樣式。
<style lang="scss"> ? ? .el-table .speak-row { ? ? ? ? color: darkorange; ? ? ? ? font-size: 15px; ? ? ? ? font-weight: 500; ? ? ? ? background: #f0f9eb; ? ? } </style>
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue項(xiàng)目頁(yè)面的打印和下載PDF加loading效果的實(shí)現(xiàn)(加水印)
這篇文章主要介紹了vue項(xiàng)目頁(yè)面的打印和下載PDF加loading效果的實(shí)現(xiàn)(加水印),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12如何使用el-table+el-tree+el-select動(dòng)態(tài)選擇對(duì)應(yīng)值
小編在做需求時(shí),遇到了在el-table表格中加入多條數(shù)據(jù),并且每條數(shù)據(jù)要通過(guò)el-select來(lái)選取相應(yīng)的值,做到動(dòng)態(tài)選擇,下面這篇文章主要給大家介紹了關(guān)于如何使用el-table+el-tree+el-select動(dòng)態(tài)選擇對(duì)應(yīng)值的相關(guān)資料,需要的朋友可以參考下2023-01-01手把手教你創(chuàng)建vue3項(xiàng)目的最佳方式
如今的Vue3已經(jīng)勢(shì)不可擋,當(dāng)然搭建一個(gè)全新的Vue3項(xiàng)目也有了全新的方式,下面這篇文章主要給大家介紹了關(guān)于如何手把手教你創(chuàng)建vue3項(xiàng)目的最佳方式,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11Vue項(xiàng)目全局配置頁(yè)面緩存之按需讀取緩存的實(shí)現(xiàn)詳解
這篇文章主要給大家介紹了關(guān)于Vue項(xiàng)目全局配置頁(yè)面緩存之實(shí)現(xiàn)按需讀取緩存的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起看看吧2018-08-08vue react中的excel導(dǎo)入和導(dǎo)出功能
當(dāng)我們把信息化系統(tǒng)給用戶使用時(shí),用戶經(jīng)常需要把以前在excel里錄入的數(shù)據(jù)導(dǎo)入的信息化系統(tǒng)里,這樣為用戶提供了很大的方便,這篇文章主要介紹了vue中或者react中的excel導(dǎo)入和導(dǎo)出,需要的朋友可以參考下2023-09-09electron-vue+electron-updater實(shí)現(xiàn)自動(dòng)更新(步驟源碼)
這篇文章主要介紹了electron-vue+electron-updater實(shí)現(xiàn)自動(dòng)更新,步驟源碼包括autoUpdater.js操控更新js文件,main.js也就是package.json內(nèi)的main指向的js文件,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-10-10詳解vue使用vue-layer-mobile組件實(shí)現(xiàn)toast,loading效果
這篇文章主要介紹了詳解vue使用vue-layer-mobile組件實(shí)現(xiàn)toast,loading效果,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-08-08vue.js內(nèi)部自定義指令與全局自定義指令的實(shí)現(xiàn)詳解(利用directive)
這篇文章主要給大家介紹了關(guān)于vue.js內(nèi)部自定義指令與全局自定義指令的實(shí)現(xiàn)方法,vue.js中實(shí)現(xiàn)自定義指令的主要是利用directive,directive這個(gè)單詞是我們寫自定義指令的關(guān)鍵字,需要的朋友們下面跟著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-07-07