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

ElementUI中el-table表格組件如何自定義表頭

 更新時(shí)間:2023年09月12日 09:44:48   作者:Hayley2016  
最近需要做一個(gè)el-table的表格,表頭需要顯示提示信息,本文主要介紹了ElementUI中el-table表格組件如何自定義表頭,具有一定的參考價(jià)值,感興趣的可以了解一下

問題概述

鼠標(biāo)移動(dòng)到el-table表格組件的表頭顯示提示信息,也算是自定義表頭的一種吧。

效果圖:(寶寶不會(huì)做動(dòng)圖,寶寶心里苦!?。。?/p>

1. ElementUI2.0組件庫el-table表格組件常規(guī)用法

先貼上ElementUI2.0組件庫的官網(wǎng)地址:http://element-cn.eleme.io/#/zh-CN ,百度搜索“element”第一個(gè)就是啦。

平常使用el-table表格組件是這樣的:

1.   給表格傳參,tableData是一個(gè)數(shù)組。

tableData = [
  {date: '2018-01-01',tradeCount: 200, tradeSum: 100}, 
  {date: '2018-01-01', tradeCount: 200,tradeSum: 100}
]

2.   在<el-table-column>中用prop屬性來對應(yīng)對象中的鍵名即可填入數(shù)據(jù)。

3.   用label屬性來定義表格的列名??梢允褂?strong>width屬性來定義列寬。

4.   表格組件中默認(rèn)文本居左顯示。align=”right”屬性可設(shè)置文本向右顯示,當(dāng)然還有 left、 center 等屬性值。

5.   若想在單元格中自定義,要用<template>標(biāo)簽包裹起來,slot-scope屬性傳參,scope.row取值。

6.   添加事件。

7. 表格還有很多豐富的參數(shù),根據(jù)項(xiàng)目需求選擇合適的參數(shù)吧!

有了對于el-table的基本了解之后,下面開始正式介紹如何在el-table表格組件中自定義表頭?。?!

2. render-header屬性了解一下

我們不能直接在prop屬性直接傳遞一個(gè)組件或者h(yuǎn)tml元素。正確的做法是:Table組件提供了render-header屬性,可以好好利用一番。

這是官網(wǎng)對render-header屬性的描述

3. 解決辦法--JSX語法

1.   在<el-table-column>中傳入render-header屬性

<el-table-column align="right" :render-header="renderHeader">
    <template slot-scope="scope">{{scope.row.collected}}</template>
</el-table-column>

2.   在methods自定義renderHeader方法,return (<div></div>)是JSX語法,詳見官網(wǎng) https://cn.vuejs.org/v2/guide/render-function.html#JSX

renderHeader(h, { column, $index }){
  return (
    <div>
        <span>實(shí)收總金額(元) </span>
        <el-tooltip class="item" effect="dark" content="實(shí)收總金額 = 收款總金額 - 退款總金額"  placement="bottom">
          <i class="el-icon-warning table-msg"></i>
        </el-tooltip>
    </div>
  )
}

3.   npm run dev 編譯項(xiàng)目之后,報(bào)錯(cuò),要使用jsx語法需要先安裝編譯插件

4. 安裝JSX語法編譯工具

npm install\
  babel-plugin-syntax-jsx\
  babel-plugin-transform-vue-jsx\
  babel-helper-vue-jsx-merge-props\
  babel-preset-es2015\
  --save-dev

5. 配置.babelrc文件

{
  "presets": ["es2015"],
  "plugins": ["transform-vue-jsx"]
}

4. 解決辦法--渲染函數(shù)

可直接使用渲染函數(shù),不使用JSX語法,就不需要安裝額外的編譯插件啦

renderHeader(h, data) {
    return h("div", [
        h("span", ['實(shí)收總金額(元) ']),
        h("el-tooltip", {
            attrs: {
                class: "item",
                effect: "dark",
                content: "實(shí)收總金額 = 收款總金額 - 退款總金額",
                placement: "bottom"
            }
        }, [
            h("i", {
                'class': 'el-icon-warning table-msg'
            })
        ])
    ])
}

h 作為 createElement 的別名是 Vue 生態(tài)系統(tǒng)中的一個(gè)通用慣例,實(shí)際上也是 JSX 所要求的,如果在作用域中 h 失去作用, 在應(yīng)用中會(huì)觸發(fā)報(bào)錯(cuò)

問題匯總:

1. 博主根據(jù)實(shí)際項(xiàng)目情況,編寫了這篇博文。存在一個(gè)坑????

看到這個(gè)小小的i標(biāo)簽沒有,就是它。有同學(xué)直接拷貝代碼之后,因?yàn)闆]有對這個(gè)i 標(biāo)簽設(shè)置樣式。也就沒有鼠標(biāo)上移顯示tooltip的效果了。因?yàn)閷⑸衔奈覀兊膖ooltip組件翻譯成HTML代碼是這樣的:(我們把鼠標(biāo)放到i標(biāo)簽上才能顯示tooltip哦)

<div>
  <span>實(shí)收總金額(元) </span>
  <el-tooltip class="item" effect="dark" content="實(shí)收總金額 = 收款總金額 - 退款總金額" placement="bottom">
    <i class="el-icon-warning table-msg"></i>
  </el-tooltip>
</div>

2.  渲染函數(shù)的語法規(guī)則詳見 https://cn.vuejs.org/v2/guide/render-function.html,自己多寫幾遍就能明白啦!

對于如何在自定義表頭添加事件,可以查看《createElement參數(shù)——深入data對象》 

到此這篇關(guān)于ElementUI中el-table表格組件如何自定義表頭的文章就介紹到這了,更多相關(guān)el-table自定義表頭內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue和React中diff算法的區(qū)別及說明

    Vue和React中diff算法的區(qū)別及說明

    React和Vue都使用虛擬DOM和diff算法來更新DOM,但它們在實(shí)現(xiàn)上有所不同,React采用基于索引的比較,Vue采用雙端比較算法,React在比較時(shí)不復(fù)用不同類型的節(jié)點(diǎn),而Vue會(huì)優(yōu)先復(fù)用兩端相同的節(jié)點(diǎn),React對key的依賴較高,而Vue在沒有key時(shí)也能通過雙端比較優(yōu)化
    2025-03-03
  • 關(guān)于移動(dòng)端與大屏幕自適應(yīng)適配方案

    關(guān)于移動(dòng)端與大屏幕自適應(yīng)適配方案

    這篇文章主要介紹了關(guān)于移動(dòng)端與大屏幕自適應(yīng)適配方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • vue組件封裝實(shí)現(xiàn)抽獎(jiǎng)隨機(jī)數(shù)

    vue組件封裝實(shí)現(xiàn)抽獎(jiǎng)隨機(jī)數(shù)

    這篇文章主要為大家詳細(xì)介紹了vue組件封裝實(shí)現(xiàn)抽獎(jiǎng)隨機(jī)數(shù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Vue實(shí)現(xiàn)訂單支付倒計(jì)時(shí)功能

    Vue實(shí)現(xiàn)訂單支付倒計(jì)時(shí)功能

    這篇文章主要給大家介紹了Vue實(shí)現(xiàn)訂單支付倒計(jì)時(shí)功能,倒計(jì)時(shí)這要運(yùn)用在創(chuàng)建訂單后15分鐘內(nèi)進(jìn)行支付,否則訂單取消,本文結(jié)合示例代碼給大家詳細(xì)講解,需要的朋友可以參考下
    2023-08-08
  • Vue中$set()的使用方法場景分析

    Vue中$set()的使用方法場景分析

    由于 Vue 會(huì)在初始化實(shí)例時(shí)進(jìn)行雙向數(shù)據(jù)綁定,使用Object.defineProperty()對屬性遍歷添加 getter/setter 方法,所以屬性必須在 data 對象上存在時(shí)才能進(jìn)行上述過程 ,這樣才能讓它是響應(yīng)的,這篇文章主要介紹了Vue中$set()的使用方法場景分析,需要的朋友可以參考下
    2023-02-02
  • elementUI中el-dropdown的command實(shí)現(xiàn)傳遞多個(gè)參數(shù)

    elementUI中el-dropdown的command實(shí)現(xiàn)傳遞多個(gè)參數(shù)

    這篇文章主要介紹了elementUI中el-dropdown的command實(shí)現(xiàn)傳遞多個(gè)參數(shù)方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 在Vue框架中配置Mock服務(wù)器的方法

    在Vue框架中配置Mock服務(wù)器的方法

    在前端開發(fā)中,如果需要模擬后端數(shù)據(jù),而又不想開發(fā)一個(gè)后端服務(wù)器, 則可以借助mock.js配置一個(gè)后端服務(wù)器來返回前端需要的數(shù)據(jù),本文將會(huì)分別介紹在Quasar項(xiàng)目和Vite項(xiàng)目中Mock服務(wù)器的配置方法
    2022-12-12
  • Vs-code/WebStorm中構(gòu)建Vue項(xiàng)目的實(shí)現(xiàn)步驟

    Vs-code/WebStorm中構(gòu)建Vue項(xiàng)目的實(shí)現(xiàn)步驟

    本文主要介紹了在Vs-code/WebStorm中構(gòu)建Vue項(xiàng)目,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • 如何利用vue展示.docx文件、excel文件和csv文件內(nèi)容

    如何利用vue展示.docx文件、excel文件和csv文件內(nèi)容

    最近遇到了一些新的需求,需要前端實(shí)現(xiàn)文件預(yù)覽功能,下面這篇文章主要給大家介紹了關(guān)于如何利用vue展示.docx文件、excel文件和csv文件內(nèi)容的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-04-04
  • Vue?和?Django?實(shí)現(xiàn)?Token?身份驗(yàn)證的流程

    Vue?和?Django?實(shí)現(xiàn)?Token?身份驗(yàn)證的流程

    這篇文章主要介紹了Vue?和?Django?實(shí)現(xiàn)?Token?身份驗(yàn)證?,Vue.js?和?Django?編寫的前后端項(xiàng)目中,實(shí)現(xiàn)了基于?Token?的身份驗(yàn)證機(jī)制,其他前后端框架的?Token?實(shí)現(xiàn)原理與本文一致,需要的朋友可以參考下
    2022-08-08

最新評論