欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Element?Plus修改表格行和單元格樣式詳解

 更新時(shí)間:2022年04月29日 11:54:58   作者:赤藍(lán)紫  
在使用Element Plus中的table組件展示數(shù)據(jù)時(shí),由于需要對(duì)表格行內(nèi)數(shù)據(jù)的數(shù)據(jù)進(jìn)行修改,下面這篇文章主要給大家介紹了關(guān)于Element?Plus修改表格行和單元格樣式的相關(guān)資料,需要的朋友可以參考下

前言

實(shí)習(xí)工作需要根據(jù)表格的狀態(tài)字段來(lái)設(shè)置行的樣式,記錄一波。

先來(lái)一下基礎(chǔ)配置。(Vue3)

<template>
  <el-table :data="tableData" border style="width: 400px">
    <el-table-column prop="name" label="姓名" width="100" />
    <el-table-column prop="age" label="年齡" width="100" />
    <el-table-column prop="job" label="工作" />
  </el-table>
</template>

<script setup>
const tableData = [
  {
    name: "clz",
    age: 21,
    job: "Coder",
  },
  {
    name: "czh",
    age: 21,
    job: "Coder",
  },
  {
    name: "赤藍(lán)紫",
    age: 21,
    job: "Coder",
  },
];
</script>

<style lang="less" scoped>
</style>

設(shè)置某一行的樣式

主要是通過(guò) row-style屬性來(lái)實(shí)現(xiàn)。它是行的 style的回調(diào)方法,可以通過(guò)它來(lái)實(shí)現(xiàn)設(shè)置某一行的樣式。

先讓我們來(lái)體驗(yàn)一下它的參數(shù)都是些什么。

<el-table 
  style="width: 400px" 
  border 
  :data="tableData" 
  :row-style="rowState"
>
</el-table>
const rowState = (arg) => {
  console.log(arg)
}

可以發(fā)現(xiàn),它是一個(gè)對(duì)象,一個(gè)屬性是行的數(shù)據(jù),一個(gè)是行號(hào)(從0開始),至于不只是打印3次,而是打印9次的原因還沒發(fā)現(xiàn),后面單元格的會(huì)打印18次,9個(gè)單元格打印18次。但是這個(gè)并不是本次的研究重點(diǎn)。

那么,我們?cè)鯓幽茉O(shè)置樣式呢?

只需要返回含有屬性樣式的對(duì)象即可。(駝峰命名法)

const rowState = (arg) => {
  return {
    backgroundColor: 'pink',
    color: '#fff'
  }
}

然后在搭配參數(shù)使用,就能實(shí)現(xiàn)根據(jù)表格內(nèi)容設(shè)置行的樣式。

const rowState = ({ row }) => {
  let style = {}

  switch (row.name) {
    case 'clz':
      style = {
        backgroundColor: 'red'
      }
      break;
    case 'czh':
      style = {
        backgroundColor: 'blue'
      }
      break;
    case '赤藍(lán)紫':
      style = {
        backgroundColor: 'purple'
      }
      break;
  }
  return style;
}

設(shè)置某一個(gè)單元格的樣式

通過(guò) cell-style屬性來(lái)實(shí)現(xiàn)。做法和上面一樣,就不多說(shuō)了,主要的四個(gè)參數(shù) row, column, rowIndex, columnIndex。

  • row:行的信息
  • column:列的信息
  • rowIndex: 行數(shù)(0開始算)
  • columnIndex:列數(shù)(0開始算)
<el-table 
  style="width: 400px" 
  border 
  :data="tableData" 
  :cell-style="cellStyle"
>
</el-table>
const cellStyle = ({ row, column, rowIndex, columnIndex }) => {
  if (rowIndex === 1 && columnIndex === 1) {
    return {
      backgroundColor: 'pink'
    }
  }
}

其實(shí),cell-state不只是能設(shè)置單元格的樣式,因?yàn)樗膮?shù)中含有 row和 column,所以還可以用來(lái)設(shè)置某一行或某一列的樣式。

const cellStyle = ({ row, column, rowIndex, columnIndex }) => {
  if (column.label === '工作') {
    return {
      backgroundColor: 'purple'
    }
  }

  if (row.name === '赤藍(lán)紫') {
    return {
      backgroundColor: 'red'
    }
  }

}

注意,這里重疊的地方并不會(huì)出現(xiàn)后來(lái)的樣式覆蓋掉前面的樣式,而是先到先得

表頭樣式修改(贈(zèng)品)

特殊的表頭,特殊的處理

header-row-style:只有一個(gè)rowIndex屬性

const headerRowStyle = (args) => {
  console.log(args)
  return {
    height: '100px',
    backgroundColor: 'red'
  }
}

發(fā)現(xiàn)只有標(biāo)頭的行高有所變化,這是為啥呢?

檢查樣式發(fā)現(xiàn),這是因?yàn)閱卧癖旧砭哂斜尘邦伾?,所以并不?huì)生效。

header-row-style:和正常的單元格一樣,有四個(gè)屬性

const headerCellStyle = ({ row, column, rowIndex, columnIndex }) => {
  if (columnIndex === 1) {
    return {
      backgroundColor: 'pink'
    }
  }
}

也可以通過(guò)column屬性來(lái)設(shè)置符合條件的表頭單元格的樣式。

const headerCellStyle = ({ row, column, rowIndex, columnIndex }) => {
?
  if (column.label === '姓名') {
    return {
      backgroundColor: 'red'
    }
  }
}

總結(jié)

到此這篇關(guān)于Element Plus修改表格行和單元格樣式的文章就介紹到這了,更多相關(guān)Element Plus修改單元格樣式內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vite+vue3搭建的工程熱更新失效問題及解決

    vite+vue3搭建的工程熱更新失效問題及解決

    這篇文章主要介紹了vite+vue3搭建的工程熱更新失效問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • elementui彈窗頁(yè)按鈕重復(fù)提交問題解決方法

    elementui彈窗頁(yè)按鈕重復(fù)提交問題解決方法

    本文主要介紹了elementui彈窗頁(yè)按鈕重復(fù)提交問題解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08
  • vue 修改 data 數(shù)據(jù)問題并實(shí)時(shí)顯示的方法

    vue 修改 data 數(shù)據(jù)問題并實(shí)時(shí)顯示的方法

    今天小編就為大家分享一篇vue 修改 data 數(shù)據(jù)問題并實(shí)時(shí)顯示的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • vue.js input框之間賦值方法

    vue.js input框之間賦值方法

    今天小編就為大家分享一篇vue.js input框之間賦值方法具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • Vue3中reactive丟失響應(yīng)式問題詳解

    Vue3中reactive丟失響應(yīng)式問題詳解

    在vue3中,如果你用reactive聲明了一個(gè)對(duì)象,用另一個(gè)對(duì)象直接給它賦值,那么它就會(huì)失去響應(yīng)式,下面這篇文章主要給大家介紹了關(guān)于Vue3中reactive丟失響應(yīng)式問題的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • 微信jssdk邏輯在vue中的運(yùn)用詳解

    微信jssdk邏輯在vue中的運(yùn)用詳解

    這篇文章主要介紹了微信jssdk邏輯在vue中的運(yùn)用詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • vant如何修改placeholder樣式

    vant如何修改placeholder樣式

    這篇文章主要介紹了vant如何修改placeholder樣式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • VueJS 組件參數(shù)名命名與組件屬性轉(zhuǎn)化問題

    VueJS 組件參數(shù)名命名與組件屬性轉(zhuǎn)化問題

    這篇文章主要介紹了VueJS 組件參數(shù)名命名與組件屬性轉(zhuǎn)化問題,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-12-12
  • ant design vue datepicker日期選擇器中文化操作

    ant design vue datepicker日期選擇器中文化操作

    這篇文章主要介紹了ant design vue datepicker日期選擇器中文化操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-10-10
  • vue.js 使用axios實(shí)現(xiàn)下載功能的示例

    vue.js 使用axios實(shí)現(xiàn)下載功能的示例

    下面小編就為大家分享一篇vue.js 使用axios實(shí)現(xiàn)下載功能的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看
    2018-03-03

最新評(píng)論