vue3?el-table結(jié)合seamless-scroll實(shí)現(xiàn)表格數(shù)據(jù)滾動(dòng)的思路詳解
github開源地址:https://github.com/xfy520/vue3-seamless-scroll
步驟
1. 安裝
npm install vue3-seamless-scroll --save
2. vue代碼
<template>
<el-table
:data="tableData"
style="width: 100%"
class="top"
>
<el-table-column prop="name" label="名稱" align="center" />
<el-table-column prop="date" label="日期" align="center" />
<el-table-column prop="money" label="金額" align="center" />
</el-table>
<vue3-seamless-scroll class="seamless-warp scroll" :list="tableData" :step="0.3" style="width: 100%">
<el-table
:data="tableData"
style="width: 100%"
class="bottom"
>
<el-table-column prop="name" label="名稱" align="center" />
<el-table-column prop="date" label="日期" align="center" />
<el-table-column prop="money" label="金額" align="center" />
</el-table>
</vue3-seamless-scroll>
</template>
<script>
import { defineComponent, reactive, onMounted, toRefs } from 'vue'
import { Vue3SeamlessScroll } from "vue3-seamless-scroll";
export default defineComponent({
components: { Vue3SeamlessScroll },
setup() {
const state = reactive({
tableData: null,
})
onMounted(() => {
setTimeout(() => {
state.tableData = [
{
date: '2022-05-03',
name: '名稱名稱',
money: 200333,
},
{
date: '2022-05-02',
name: '名稱名稱',
money: 190333,
},
{
date: '2022-05-04',
name: '名稱名稱',
money: 220333,
},
{
date: '2022-05-01',
name: '名稱名稱',
money: 310333,
},
{
date: '2022-05-04',
name: '名稱名稱',
money: 220333,
},
{
date: '2022-05-01',
name: '名稱名稱',
money: 310333,
},
{
date: '2022-05-04',
name: '名稱名稱',
money: 220333,
},
{
date: '2022-05-01',
name: '名稱名稱',
money: 310333,
},
]
}, 3000)
})
return {
...toRefs(state),
}
},
})
</script>
<style lang="scss" scoped>
::v-deep .seamless-warp {
height: 229px;
overflow: hidden;
}
::v-deep .top .el-table__body-wrapper {
display: none;
}
::v-deep .bottom .el-table__header-wrapper {
display: none;
width: 100%;
}
</style>
思路:創(chuàng)建兩個(gè)table,隱藏第一個(gè)table的body部分,這樣就能得到一個(gè)固定的head。再隱藏第二個(gè)table的head部分,同時(shí)第二個(gè)table又是在滾動(dòng)組件中,所以整個(gè)table都是滾動(dòng)的,這時(shí)候隱藏head再搭配第一個(gè)table的head就能得到固定head并且body數(shù)據(jù)滾動(dòng)的效果。
到此這篇關(guān)于vue3 el-table結(jié)合seamless-scroll實(shí)現(xiàn)表格數(shù)據(jù)滾動(dòng)的文章就介紹到這了,更多相關(guān)vue3表格數(shù)據(jù)滾動(dòng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- vue3?實(shí)現(xiàn)關(guān)于?el-table?表格組件的封裝及調(diào)用方法
- vue3+elementplus基于el-table-v2封裝公用table組件詳細(xì)代碼
- vue3+ts+vite使用el-table表格渲染記錄重復(fù)情況
- Vue3中el-table表格數(shù)據(jù)不顯示的原因和解決方法
- 解決vue3中from表單嵌套el-table時(shí)填充el-input,v-model不唯一問題
- vue3插槽:el-table表頭插入tooltip及更換表格背景色方式
- vue3使用element-plus中el-table組件報(bào)錯(cuò)關(guān)鍵字'emitsOptions'與'insertBefore'分析
- vue3 el-table 如何通過深度選擇器::v-deep修改組件內(nèi)部樣式(默認(rèn)樣式)
相關(guān)文章
vuecli項(xiàng)目構(gòu)建SSR服務(wù)端渲染的實(shí)現(xiàn)
這篇文章主要介紹了vuecli項(xiàng)目構(gòu)建SSR服務(wù)端渲染的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
vue2/vue3路由權(quán)限管理的方法實(shí)例
最近用vue框架做了個(gè)后臺(tái)管理項(xiàng)目,涉及權(quán)限,所以下面這篇文章主要給大家介紹了關(guān)于vue2/vue3路由權(quán)限管理的相關(guān)資料,需要的朋友可以參考下2021-06-06
axios請(qǐng)求二次封裝之避免重復(fù)發(fā)送請(qǐng)求
在做vue中大型項(xiàng)目的時(shí)候,官方推薦使用axios,但是原生的axios可能對(duì)項(xiàng)目的適配不友好,所以在工程開始的來封裝一下axios,下面這篇文章主要給大家介紹了關(guān)于axios請(qǐng)求二次封裝之避免重復(fù)發(fā)送請(qǐng)求的相關(guān)資料,需要的朋友可以參考下2022-10-10
vue項(xiàng)目中使用this.$confirm解析
這篇文章主要介紹了vue項(xiàng)目中使用this.$confirm方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09
vue-cli對(duì)element-ui組件進(jìn)行二次封裝的實(shí)戰(zhàn)記錄
組件類似于需要多個(gè)地方用到的方法,在Vue中組件就是一種復(fù)用(經(jīng)常使用)一個(gè)功能的手段,下面這篇文章主要給大家介紹了關(guān)于Vue?element?ui二次封裝的相關(guān)資料,需要的朋友可以參考下2022-06-06
vuex狀態(tài)管理數(shù)據(jù)狀態(tài)查詢與更改方式
這篇文章主要介紹了vuex狀態(tài)管理數(shù)據(jù)狀態(tài)查詢與更改方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-04-04

