Vue使用ElementUI動態(tài)修改table單元格背景顏色或文本顏色
前言
今天遇到一個場景,表格行屬性的字典項要針對不同的狀態(tài),展示不同的文本顏色,如下圖所示:
賬號狀態(tài)這一欄,如果是正常就展示以綠色字體展示,如果是禁用就以紅色顏色展示

針對這個需求,我第一時間也是想到使用ElementUI提供給table的一個屬性:cell-style
官方是這么說明的:

簡單說明就是,我們給需要修飾的table一個cell-style屬性,它的值是一個回調函數(shù),我們可以在回調函數(shù)里面進行邏輯處理,增加style樣式
它的回調函數(shù)又四個參數(shù),格式如下:
Function({<!--{cke_protected}{C}%3C!%2D%2D%20%2D%2D%3E-->row, column, rowIndex, columnIndex})/Object我實現(xiàn)我這個需求只用到了前兩個參數(shù),下面進行代碼演示。
給table增加cell-style屬性
首先給table增加cell-style屬性
<el-table :data="userTableData" highlight-current-row border stripe fit :cell-style="cellStyle" >

修改一行顏色
如果想要一行都變成返回的style樣式,可以這么寫:
這里的顏色不止支持顏色編碼,而且支持顏色的單詞

這樣一行都是邏輯返回的樣式了

可以支持多個樣式,類似于style行內(nèi)樣式的寫法,比如:


但是這明顯不符合我的需求,我的需求是只讓賬號狀態(tài)進行文本修飾,而不是一整行,所以需要使用下面這種。
只修改某個屬性顏色
如果不想讓一行都根據(jù)返回的style修飾
我們可以借助column獲取全部的行,然后某一行的lable屬性,用它進行處理,比如這里我只想讓賬號狀態(tài)被返回的style修飾,就可以這么寫:

相關代碼如下:
//改變表格某一列或者某一個單元格文本顏色
cellStyle({row, column, rowIndex, columnIndex}) {
// 定義樣式變量
let cellStyle;
// 根據(jù)每一行的status屬性的值進行判斷
// 如果是正常就展示以綠色字體展示,如果是禁用就以紅色顏色展示
switch(row.status) {
// 0代表正常
case 0:
// 設置文本顏色 綠色 可以直接寫顏色編碼,也可以直接寫顏色的單詞
cellStyle = 'color:#70DB93';
break;
// 0代表金禁用
case 1:
// 設置文本顏色 紅色
cellStyle = 'color:red';
break;
// 如果有其他狀態(tài),就默認顯示,不給文本顏色
default:
cellStyle = '';
}
//return cellStyle // 返回最終處理過的樣式 這樣寫就是讓全部行被style修飾
// 返回最終處理過的樣式 只讓賬號狀態(tài)這個屬性的屬性被style修飾
if(column.label == '賬號狀態(tài)'){
return cellStyle
}
},
這樣就滿足了我的需求:

總結
到此這篇關于Vue使用ElementUI動態(tài)修改table單元格背景顏色或文本顏色的文章就介紹到這了,更多相關Vue Element table背景顏色內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
- vue elementUi+sortable.js實現(xiàn)嵌套表格拖拽問題
- vue+elementUi中的table實現(xiàn)跨頁多選功能(示例詳解)
- Vue+ElementUI踩坑之動態(tài)顯示/隱藏表格的列el-table-column問題
- Vue+EleMentUI實現(xiàn)el-table-colum表格select下拉框可編輯功能實例
- Vue?ElementUI在el-table中使用el-popover問題
- vue+elementUI-el-table實現(xiàn)動態(tài)顯示隱藏列方式
- vue?elementui二次封裝el-table帶插槽問題
- Vue?ElementUI?table實現(xiàn)雙擊修改編輯某個內(nèi)容的方法
相關文章
vue中使用pdfjs-dist?+?turnjs實現(xiàn)頁面的翻書瀏覽功能
這篇文章主要介紹了vue中使用pdfjs-dist?+?turnjs實現(xiàn)頁面的翻書瀏覽,通過本文學習我們知道了pdfjs-dist 的工作原理是把獲取到的 pbf 的文件的數(shù)據(jù)流, 利用 canvas轉換成圖片,本文通過實例代碼詳解講解,需要的朋友可以參考下2022-10-10
Vue在頁面右上角實現(xiàn)可懸浮/隱藏的系統(tǒng)菜單
這篇文章主要介紹了Vue在頁面右上角實現(xiàn)可懸浮/隱藏的系統(tǒng)菜單,實現(xiàn)思路大概是通過props將showCancel這個Boolean值傳遞到子組件,對父子組件分別綁定事件,來控制這個系統(tǒng)菜單的顯示狀態(tài)。需要的朋友可以參考下2018-05-05

