vue3應(yīng)用elementPlus table并滾動顯示問題
更新時間:2022年12月29日 15:56:26 作者:左直拳
這篇文章主要介紹了vue3應(yīng)用elementPlus table并滾動顯示問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
vue3 elementPlus table并滾動顯示
效果類似
其實也沒啥,代碼部分,
1、首先使用了element plus的table
<template> <div> <el-table ref="table1" :data="state.data" height="250" > <el-table-column prop="station" label="站點" width="90" align="center" /> <el-table-column prop="city" label="地市" width="55" align="center" /> <el-table-column prop="date" label="日期" width="75" align="center" /> <el-table-column prop="level" label="等級" width="70" align="center" /> </el-table> </div> </template>
2、設(shè)置定時器
<script setup> import { reactive, onMounted, ref } from "vue"; import { getWaterData as getDataApi } from "@/modules/api/home"; const state = reactive({ data: [], }); const table1 = ref(); onMounted(() => { getDataApi().then((data) => {//獲取數(shù)據(jù) state.data = data; scroll(table1.value.$refs.bodyWrapper);//設(shè)置滾動 }); }); </script> <script> //scroll方法不用對外,所以放在<script>里了 const scroll = (tableBody) => { let isScroll = true; const dom1 = tableBody.getElementsByClassName("el-scrollbar__wrap")[0]; //鼠標放上去,停止?jié)L動;移開,繼續(xù)滾動 dom1.addEventListener("mouseover", () => { isScroll = false; }); dom1.addEventListener("mouseout", () => { isScroll = true; }); setInterval(() => { if (isScroll) { dom1.scrollTop += 1; if (dom1.clientHeight + dom1.scrollTop == dom1.scrollHeight) { dom1.scrollTop = 0; } } }, 100); }; </script>
注意控制的dom是
table1.value.$refs.bodyWrapper.getElementsByClassName("el-scrollbar__wrap")[0]
這是vue3中應(yīng)用element plus 的table,網(wǎng)上許多教程 說控制this.$refs.table.bodyWrapper的,不好使,沒有作用。
vue3 elementPlus table對tooltip格式修改
描述:將返回來的數(shù)據(jù)拼在一起 用逗號隔開
解決方法
<el-table-column ?? ?prop="airportInfos" ?? ?label="管轄機場" > ?? ?<template #default="scope" v-if="false"> ?? ??? ?{{ ?? ??? ??? ?void (scope.row.temp = scope.row.airportInfos ?? ??? ??? ??? ?.map( ?? ??? ??? ??? ??? ?(el) => ?? ??? ??? ??? ??? ??? ?el.ident + ?? ??? ??? ??? ??? ??? ?(el["designator"] === " ? " ?? ??? ??? ??? ??? ??? ??? ?? "" ?? ??? ??? ??? ??? ??? ??? ?: "(" + el["designator"] + ")") ?? ??? ??? ??? ?) ?? ??? ??? ??? ?.join(",")) ?? ??? ?}} ?? ??? ?<el-tooltip placement="top"> ?? ??? ??? ?<template #content> ?? ??? ??? ??? ?{{ scope.row.temp }} ?? ??? ??? ?</template> ?? ??? ??? ?<div class="ellipsis diyname-ellipsis-width"> ?? ??? ??? ??? ?{{ scope.row.temp }} ?? ??? ??? ?</div> ?? ??? ?</el-tooltip> ?? ?</template> </el-table-column>
<el-table-column ?? ?prop="airportInfos" ?? ?label="管轄機場" ?? ?:formatter="formatter" ?? ?show-overflow-tooltip > </el-table-column> // 使用formatter const formatter = (row, column, cellValue) => { ?? ?return cellValue ?? ??? ?.map( ?? ??? ??? ?(el) => ?? ??? ??? ??? ?el.ident + ?? ??? ??? ??? ?(el["designator"] === " ? " ? "" : "(" + el["designator"] + ")") ?? ??? ?) ?? ??? ?.join(","); };
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- vue3?el-table結(jié)合seamless-scroll實現(xiàn)表格數(shù)據(jù)滾動的思路詳解
- vue中el-table兩個表尾合計行聯(lián)動同步滾動條實例代碼
- vue中獲取滾動table的可視頁面寬度調(diào)整表頭與列對齊(每列寬度不都相同)
- vue elementUI table表格數(shù)據(jù) 滾動懶加載的實現(xiàn)方法
- vue element-ui table表格滾動加載方法
- vue iview 隱藏Table組件里的某一列操作
- Vue基于iview table展示圖片實現(xiàn)點擊放大
- 淺談vue的iview列表table render函數(shù)設(shè)置DOM屬性值的方法
- vue 使用iView組件中的Table實現(xiàn)定時自動滾動效果
相關(guān)文章
Vue全局使用less樣式,組件使用全局樣式文件中定義的變量操作
這篇文章主要介紹了Vue全局使用less樣式,組件使用全局樣式文件中定義的變量操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-10-10vue3+ts+EsLint+Prettier規(guī)范代碼的方法實現(xiàn)
本文主要介紹在Vue3中使用TypeScript做開發(fā)時,如何安裝與配置EsLint和Prettier,以提高編碼規(guī)范。感興趣的可以了解一下2021-10-10Vue綁定class和綁定內(nèi)聯(lián)樣式的實現(xiàn)方法
本文主要介紹了Vue綁定class和綁定內(nèi)聯(lián)樣式的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-11-11