最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vxe-table如何使用vxe-grid實(shí)現(xiàn)動(dòng)態(tài)配置表格

 更新時(shí)間:2025年04月24日 10:45:00   作者:小泡泡c  
這篇文章主要介紹了vxe-table如何使用vxe-grid實(shí)現(xiàn)動(dòng)態(tài)配置表格問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

一、圖1:界面效果

說(shuō)明:

  • 1)刪除:觸發(fā)函數(shù) deleteRow 刪除當(dāng)前行。
  • 2)編輯:觸發(fā)函數(shù) editRow 將當(dāng)前行激活,界面發(fā)生變化。見(jiàn)圖2。

二、圖2:編輯效果

說(shuō)明:

  • 3)保存:觸發(fā)函數(shù) saveRow 保存當(dāng)前行數(shù)據(jù)。
  • 4)取消:觸發(fā)函數(shù) cancelRow 還原當(dāng)前行數(shù)據(jù)。

三、表格配置

// 表格配置
export const colConfig = [
  {
    type:'seq', // 列的類(lèi)型:seq、checkbox、radio、expand
    title:'序號(hào)',
    align:'center'
  },
  {
    title:'姓名', // 列標(biāo)題(支持開(kāi)啟國(guó)際化)
    field:'name', //  列字段名(注:屬性層級(jí)越深,渲染性能就越差,例如:aa.bb.cc.dd.ee)
    align:'center', // 對(duì)齊方式
    editRender:{ // 可編輯渲染器配置項(xiàng)
      name:'input' // 渲染器名稱:input, textarea, select, $input, $select, $switch
    }
  },
  {
    title:'年齡',
    field:'age',
    align:'center',
    editRender:{
      name:'input'
    }
  },
  {
    title:'性別',
    field:'sex',
    align:'center',
    editRender:{
      name:'input'
    }
  }
]

// 表格數(shù)據(jù)
export const tableData = [
  {
    name:'小紅',
    age:15,
    sex:'女',
    id:1
  },
  {
    name:'小白',
    age:25,
    sex:'男',
    id:2
  },
  {
    name:'小藍(lán)',
    age:21,
    sex:'女',
    id:3
  }
]

四、代碼實(shí)現(xiàn)

<template>
  <div style="padding:100px">
    <vxe-grid
      ref="xTable"
      :max-height="450"
      v-bind="gridOptions"
      show-overflow
      keep-source
      highlight-hover-row
      highlight-current-row
      resizable
      auto-resize
      :row-config="{ isCurrent: true, isHover: true,keyField:'id' }"
      :edit-config="{trigger: 'manual', mode: 'row'}"
    >
      >
      <template #operation="{ row }">
        <vxe-button type="text" status="primary" @click="deleteRow(row)">刪除</vxe-button>
        <span v-if="$refs.xTable.isActiveByRow(row)">
          <vxe-button type="text" status="primary" @click="saveRow()">保存</vxe-button>
          <vxe-button type="text" status="primary" @click="cancelRow(row)">取消</vxe-button>
        </span>
        <span v-else>
          <vxe-button type="text" status="primary" @click="editRow(row)">編輯</vxe-button>
        </span>
      </template>
    </vxe-grid>
  </div>
</template>

<script>
import { colConfig, tableData } from './colConfig'
export default {
  data() {
    return {
      gridOptions: {
        columns: [],
        data: [],
      },
    }
  },
  created() {
    this.getTableData()
  },
  methods: {
    getTableData() {
      // 1.設(shè)置表格列
      this.gridOptions.columns = colConfig
      // 2.設(shè)置表格數(shù)據(jù)
      this.gridOptions.data = tableData
      // 3.添加操作列
      let operationCol = {
        title: '操作',
        slots: { default: 'operation' },
        align: 'center'
      }
      this.gridOptions.columns.push(operationCol)
    },
    deleteRow(row) {
      let index = this.gridOptions.data.findIndex(item => item.id === row.id)
      this.gridOptions.data.splice(index, 1)
    },
    editRow(row) {
      const $table = this.$refs.xTable
      $table.setActiveRow(row)
    },
    saveRow() {
      const $table = this.$refs.xTable
      $table.clearActived().then(() => {
        this.loading = true
        setTimeout(() => {
          this.loading = false
        }, 300)
      })
    },
    cancelRow(row) {
      const $table = this.$refs.xTable
      $table.clearActived().then(() => {
        // 還原行數(shù)據(jù)
        $table.revertData(row)
      })
    }
  }
}
</script>

官方文檔:vxe-table API

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 解決echarts數(shù)據(jù)二次渲染不成功的問(wèn)題

    解決echarts數(shù)據(jù)二次渲染不成功的問(wèn)題

    這篇文章主要介紹了解決echarts數(shù)據(jù)二次渲染不成功的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-07-07
  • Vue?狀態(tài)存儲(chǔ)和會(huì)話存儲(chǔ)同步清空問(wèn)題解決方案(最新推薦)

    Vue?狀態(tài)存儲(chǔ)和會(huì)話存儲(chǔ)同步清空問(wèn)題解決方案(最新推薦)

    文章介紹了在使用Pinia定義的useHeaderTabStore中,tab狀態(tài)通過(guò)會(huì)話存儲(chǔ)初始化但未在退出登錄時(shí)同步清空的問(wèn)題,通過(guò)在PiniaStore中定義清空tab的函數(shù),并在退出登錄時(shí)調(diào)用該函數(shù),可以確保狀態(tài)和會(huì)話存儲(chǔ)同步清空,避免內(nèi)存中殘留舊數(shù)據(jù),感興趣的朋友一起看看吧
    2024-12-12
  • Vue使用Ref跨層級(jí)獲取組件的步驟

    Vue使用Ref跨層級(jí)獲取組件的步驟

    這篇文章主要介紹了Vue使用Ref跨層級(jí)獲取組件的步驟,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下
    2021-01-01
  • vue實(shí)現(xiàn)瀏覽器全屏展示功能

    vue實(shí)現(xiàn)瀏覽器全屏展示功能

    這篇文章主要介紹了vue實(shí)現(xiàn)瀏覽器全屏展示功能,項(xiàng)目中使用的是sreenfull插件,執(zhí)行命令安裝,具體實(shí)現(xiàn)代碼跟隨小編一起看看吧
    2019-11-11
  • Vue實(shí)現(xiàn)錄制屏幕并本地保存功能

    Vue實(shí)現(xiàn)錄制屏幕并本地保存功能

    這篇文章主要介紹了Vue實(shí)現(xiàn)錄制屏幕功能并本地保存,這里用的是用的是HBuilder?X開(kāi)發(fā),結(jié)合示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • Vuex中actions優(yōu)雅處理接口請(qǐng)求的方法

    Vuex中actions優(yōu)雅處理接口請(qǐng)求的方法

    在項(xiàng)目開(kāi)發(fā)中,如果使用到了 vuex,通常我會(huì)將所有的接口請(qǐng)求單獨(dú)用一個(gè)文件管理,這篇文章主要介紹了Vuex中actions如何優(yōu)雅處理接口請(qǐng)求,業(yè)務(wù)邏輯寫(xiě)在 actions 中,本文給大家分享完整流程需要的朋友可以參考下
    2022-11-11
  • vue 微信授權(quán)登錄解決方案

    vue 微信授權(quán)登錄解決方案

    這篇文章主要介紹了vue 微信授權(quán)解決方案,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • vue之bus總線的簡(jiǎn)單使用解讀

    vue之bus總線的簡(jiǎn)單使用解讀

    這篇文章主要介紹了vue之bus總線的簡(jiǎn)單使用解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Vue2和Vue3在v-for遍歷時(shí)ref獲取dom節(jié)點(diǎn)的區(qū)別及說(shuō)明

    Vue2和Vue3在v-for遍歷時(shí)ref獲取dom節(jié)點(diǎn)的區(qū)別及說(shuō)明

    這篇文章主要介紹了Vue2和Vue3在v-for遍歷時(shí)ref獲取dom節(jié)點(diǎn)的區(qū)別及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • vue中插值表達(dá)式使用的示例詳解

    vue中插值表達(dá)式使用的示例詳解

    Vue的插值表達(dá)式是一種特殊的語(yǔ)法,用于在模板中動(dòng)態(tài)地將數(shù)據(jù)綁定到視圖中,一般使用雙大括號(hào) ("{{ }}")將表達(dá)式包裹起來(lái),下面我們就來(lái)根據(jù)三個(gè)案例來(lái)深入了解下插值表達(dá)式的使用吧
    2023-11-11

最新評(píng)論

安乡县| 柯坪县| 庆安县| 张北县| 大丰市| 阜城县| 巫溪县| 四子王旗| 临高县| 洪雅县| 永康市| 林西县| 和田市| 龙井市| 吉安市| 乐都县| 阿克陶县| 新野县| 赞皇县| 山西省| 长白| 三台县| 揭阳市| 保山市| 福州市| 甘洛县| 南川市| 盐边县| 安多县| 栾城县| 汕头市| 桂平市| 成安县| 贡觉县| 达州市| 清苑县| 宁强县| 延长县| 阿瓦提县| 孙吴县| 丘北县|