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

Vue 3 中使用 Element Plus 的 `el-table` 組件實現(xiàn)自適應高度

 更新時間:2024年12月17日 09:30:24   作者:AKA__一只羊  
在 Vue 3 中使用 Element Plus 的 `el-table` 組件實現(xiàn)自適應高度,你可以根據容器的高度動態(tài)設置表格的高度,下面通過示例代碼給大家展示,感興趣的朋友一起看看吧

在 Vue 3 中使用 Element Plus 的 `el-table` 組件實現(xiàn)自適應高度,你可以根據容器的高度動態(tài)設置表格的高度。通常的做法是監(jiān)聽窗口大小的變化,并相應地調整表格的高度。

以下是一個示例代碼,展示了如何實現(xiàn)這一功能:

1. 安裝 Element Plus(如果還沒有安裝):

npm install element-plus --save
# 或者
yarn add element-plus
   

2. 創(chuàng)建一個 Vue 組件,并實現(xiàn) `el-table` 的自適應高度:

<template>
  <div ref="tableContainer" class="table-container">
    <el-table
      :data="tableData"
      :height="tableHeight"
      style="width: 100%"
    >
      <el-table-column prop="date" label="日期" width="180"></el-table-column>
      <el-table-column prop="name" label="姓名" width="180"></el-table-column>
      <el-table-column prop="address" label="地址"></el-table-column>
    </el-table>
  </div>
</template>
<script>
import { ref, onMounted, onUnmounted } from 'vue';
import { ElTable, ElTableColumn } from 'element-plus';
export default {
  components: {
    ElTable,
    ElTableColumn,
  },
  setup() {
    const tableData = ref([
      { date: '2016-05-02', name: '王小虎', address: '上海市普陀區(qū)金沙江路 1518 弄' },
      { date: '2016-05-04', name: '王小虎', address: '上海市普陀區(qū)金沙江路 1517 弄' },
      // 更多數(shù)據...
    ]);
    const tableContainer = ref(null);
    const tableHeight = ref(0);
    const updateTableHeight = () => {
      if (tableContainer.value) {
        // 計算表格的高度
        const containerRect = tableContainer.value.getBoundingClientRect();
        const containerHeight = containerRect.height;
        tableHeight.value = containerHeight - 20; // 減去一些邊距或標題欄的高度
      }
    };
    // 監(jiān)聽窗口大小變化
    const handleResize = () => {
      updateTableHeight();
    };
    onMounted(() => {
      updateTableHeight(); // 初始化時計算一次高度
      window.addEventListener('resize', handleResize);
    });
    onUnmounted(() => {
      window.removeEventListener('resize', handleResize);
    });
    return {
      tableData,
      tableHeight,
      tableContainer,
    };
  },
};
</script>
<style scoped>
.table-container {
  height: 100vh; /* 你可以根據需要調整這個值 */
  overflow: auto;
}
</style>

解釋

  • <el-table>:Element Plus 提供的表格組件。
  • :height="tableHeight":綁定表格的高度,使其可以根據 `tableHeight` 的值動態(tài)變化。
  • tableContainer:引用了包含表格的容器,用于獲取其高度。
  • updateTableHeight:計算并更新表格的高度。
  • handleResize:處理窗口大小變化的函數(shù),調用 `updateTableHeight` 來更新表格高度。
  • onMounted:和 `onUnmounted`**:Vue 生命周期鉤子,分別在組件掛載和卸載時執(zhí)行相應的操作。
  • window.addEventListener('resize', handleResize):添加窗口大小變化事件監(jiān)聽器。
  • window.removeEventListener('resize', handleResize):移除窗口大小變化事件監(jiān)聽器,避免內存泄漏。

這樣,當窗口大小發(fā)生變化時,表格的高度會自動調整以適應新的窗口尺寸。你可以根據實際需求調整 `tableContainer` 的高度以及減去的邊距值。

到此這篇關于Vue 3 中使用 Element Plus 的 `el-table` 組件實現(xiàn)自適應高度的文章就介紹到這了,更多相關Vue 3 Element Plus el-table自適應高度內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

新竹县| 长泰县| 沾益县| 深泽县| 团风县| 巴南区| 得荣县| 渭源县| 灵石县| 舒兰市| 务川| 凌云县| 西安市| 黔南| 布尔津县| 广州市| 巫溪县| 日土县| 深州市| 霍林郭勒市| 巴里| 郓城县| 汉沽区| 红桥区| 新和县| 隆德县| 灵川县| 田林县| 阳谷县| 吴江市| 册亨县| 兴业县| 北票市| 峨眉山市| 西峡县| 洪洞县| 乐山市| 宁海县| 葵青区| 宁化县| 黔西|