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

vue3獲取選中的el-table行數(shù)據(jù)方式

 更新時(shí)間:2025年08月12日 09:57:55   作者:海天勝景  
文章介紹Vue3中使用el-table獲取選中行數(shù)據(jù)的三種方法:推薦通過@selection-change事件獲?。‥lementPlus最新實(shí)踐),ElementUI可用selection屬性,而v-model:checked-rows已廢棄,強(qiáng)調(diào)根據(jù)庫版本選擇合適方案,確保兼容性

在Vue 3中,如果你正在使用<el-table>組件(來自Element Plus或Element UI庫),并希望獲取被選中的行數(shù)據(jù),你可以通過幾種不同的方式來實(shí)現(xiàn)。

以下是幾種常見的方法:

方法1:使用@selection-change事件

<el-table>組件提供了一個(gè)@selection-change事件,該事件會(huì)在選中項(xiàng)發(fā)生變化時(shí)觸發(fā),你可以在這個(gè)事件的處理函數(shù)中獲取當(dāng)前的選中行數(shù)據(jù)。

首先,確保你的<el-table>組件的type屬性設(shè)置為selection,這樣就會(huì)顯示復(fù)選框,允許用戶選擇行。

<template>
  <el-table
    :data="tableData"
    @selection-change="handleSelectionChange"
    style="width: 100%"
    ref="multipleTable"
  >
    <el-table-column
      type="selection"
      width="55">
    </el-table-column>
    <el-table-column
      property="date"
      label="日期"
      width="120">
    </el-table-column>
    <el-table-column
      property="name"
      label="姓名"
      width="120">
    </el-table-column>
    <!-- 其他列 -->
  </el-table>
</template>
<script setup>
import { ref } from 'vue';
 
const tableData = ref([/* 你的數(shù)據(jù) */]);
const selectedRows = ref([]);
 
const handleSelectionChange = (val) => {
  selectedRows.value = val; // val是當(dāng)前選中行的數(shù)組
};
</script>

方法2:使用Table實(shí)例的selection屬性

如果你需要通過編程方式訪問或操作選中的行,你可以使用<el-table>組件的ref屬性來引用該組件的實(shí)例,然后通過該實(shí)例的selection屬性來獲取選中的行數(shù)據(jù)

<template>
  <el-table
    :data="tableData"
    ref="multipleTableRef"
    style="width: 100%"
  >
    <el-table-column
      type="selection"
      width="55">
    </el-table-column>
    <!-- 列定義 -->
  </el-table>
  <el-button @click="getSelectionRows">獲取選中行</el-button>
</template>
<script setup>
import { ref } from 'vue';
import { ElTable } from 'element-plus'; // 或 'element-ui' 取決于你使用的庫版本和包名
 
const tableData = ref([/* 你的數(shù)據(jù) */]);
const multipleTableRef = ref(null); // 通過ref獲取組件實(shí)例
 
const getSelectionRows = () => {
  if (multipleTableRef.value) { // 檢查ref是否已正確引用組件實(shí)例
    const selectedRows = multipleTableRef.value.selection; // 獲取選中行數(shù)據(jù)數(shù)組
    console.log(selectedRows); // 處理或顯示選中行數(shù)據(jù)
  }
};
</script>

在Element Plus中,直接通過selection屬性訪問選中行的功能已經(jīng)被移除。

你應(yīng)該使用getSelectionRows方法(如方法1所示)來處理這一需求。

如果你使用的是Element UI,那么上述方法2是可行的。但在Element Plus中,推薦使用方法1。

方法3:使用v-model:checked-rows.sync(已廢棄)或v-model:checked-rows(Element Plus)

雖然在一些舊版本的Element UI中,你可以使用v-model:checked-rows.sync(或在Element Plus中為v-model:checked-rows)來直接綁定選中的行數(shù)據(jù),但這種方法在Vue 3和Element Plus中已經(jīng)被廢棄或更改。推薦使用上述方法1來處理這個(gè)問題。

推薦使用方法1(通過@selection-change事件處理選中行數(shù)據(jù)),這是最通用且符合Vue 3和Element Plus最新實(shí)踐的方法。如果你使用的是Element UI并且想要通過實(shí)例直接訪問選中行,請(qǐng)確保你的項(xiàng)目依賴和代碼示例匹配正確的庫版本。對(duì)于Element Plus,請(qǐng)遵循最新的API和最佳實(shí)踐。

總結(jié)

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

相關(guān)文章

  • 在Vue.js中使用Mixins的方法

    在Vue.js中使用Mixins的方法

    本篇文章主要介紹了在Vue.js中使用Mixins的方法,Vue的Mixins是非常實(shí)用的編程方式,可以使代碼變得容易理解,有興趣的一起來了解一下
    2017-09-09
  • 深入淺析Vue不同場(chǎng)景下組件間的數(shù)據(jù)交流

    深入淺析Vue不同場(chǎng)景下組件間的數(shù)據(jù)交流

    探通過本篇文章給大家探討不同場(chǎng)景下組件間的數(shù)據(jù)“交流”的Vue實(shí)現(xiàn)方法,感興趣的朋友一起看看吧
    2017-08-08
  • 基于vue3實(shí)現(xiàn)一個(gè)簡(jiǎn)單的輸入框效果

    基于vue3實(shí)現(xiàn)一個(gè)簡(jiǎn)單的輸入框效果

    這篇文章主要為大家詳細(xì)介紹了如何使用Vue3實(shí)現(xiàn)一個(gè)簡(jiǎn)單的輸入框,可以實(shí)現(xiàn)輸入文字,添加表情等功能,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-03-03
  • el-tree樹組件懶加載(后端上千條數(shù)據(jù)前端進(jìn)行處理)

    el-tree樹組件懶加載(后端上千條數(shù)據(jù)前端進(jìn)行處理)

    本文主要介紹了el-tree樹組件懶加載(后端上千條數(shù)據(jù)前端進(jìn)行處理),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Vue-cli 移動(dòng)端布局和動(dòng)畫使用詳解

    Vue-cli 移動(dòng)端布局和動(dòng)畫使用詳解

    這篇文章主要介紹了Vue-cli和移動(dòng)端布局和動(dòng)畫使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • Vue中video標(biāo)簽如何實(shí)現(xiàn)不靜音自動(dòng)播放

    Vue中video標(biāo)簽如何實(shí)現(xiàn)不靜音自動(dòng)播放

    最近在做大屏展示需要在一開始播放引導(dǎo)視頻,產(chǎn)生自動(dòng)播放需求,下面這篇文章主要給大家介紹了關(guān)于Vue中video標(biāo)簽如何實(shí)現(xiàn)不靜音自動(dòng)播放的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • Vue生命周期中的組件化你知道嗎

    Vue生命周期中的組件化你知道嗎

    這篇文章主要為大家詳細(xì)介紹了Vue生命周期中的組件化,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • vue使用recorder.js實(shí)現(xiàn)錄音功能

    vue使用recorder.js實(shí)現(xiàn)錄音功能

    這篇文章主要為大家詳細(xì)介紹了vue使用recorder.js實(shí)現(xiàn)錄音功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • vue中使用svg-icon遇到的坑及解決

    vue中使用svg-icon遇到的坑及解決

    這篇文章主要介紹了vue中使用svg-icon遇到的坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • elementplus+splitpanes實(shí)現(xiàn)左右拖動(dòng)控制寬度的項(xiàng)目實(shí)踐

    elementplus+splitpanes實(shí)現(xiàn)左右拖動(dòng)控制寬度的項(xiàng)目實(shí)踐

    本文主要介紹了elementplus+splitpanes實(shí)現(xiàn)左右拖動(dòng)控制寬度,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-05-05

最新評(píng)論