vue 使用iView組件中的Table實現定時自動滾動

封裝Table

要在css中設置table的高度,使數據過多時出現滾動條,將縱向設置為overflow-y: auto;橫向設置隱藏 overflow-x: hidden;

<template><div class="table_container"><Table :loading="tableLoading" :columns="columns" :data="dataList" ref="tableL"></Table></div>
</template><script>
export default {name: "tableList",props: {columns: {type: Array,default: () => []},dataList: {type: Array,default: () => []},},data () {return {showContentHeight: 0,tableBodyHeight: 0,tableLoading: false,}},methods: {//動態滾動dynamicScroll() {let that = thisthis.$nextTick(() => {clearInterval(this.timer)const table = this.$refs.tableL;let tableBody = table.$el.__vue__.$refs.body;if (tableBody) {let showContentHeight = tableBody.offsetHeight;let tableBodyHeight = tableBody.scrollHeight;that.showContentHeight = showContentHeightthat.tableBodyHeight = tableBodyHeightif(tableBodyHeight > showContentHeight) {that.timerScroll()}}});},//定時滾動timerScroll() {let that = thisconst tmpTimer = setInterval(() => {const table = that.$refs.tableL;let tableBody = table.$el.__vue__.$refs.body;if (tableBody) {let canScrollHeight = that.tableBodyHeight - that.showContentHeightlet scrollTop = tableBody.scrollTopconsole.log('scrollTop', scrollTop)scrollTop += that.showContentHeight;if(scrollTop > canScrollHeight) {scrollTop = canScrollHeight}tableBody.scrollTop = scrollTop;}}, 5 * 1000);this.timer = tmpTimerthis.$once("hook:beforeDestroy", () => {clearInterval(tmpTimer);});}},
}
</script><style scoped lang="less">
.table_container {height: 100%;
}.table_container /deep/ .ivu-table-wrapper {height: 100%;border: none;border-bottom: 0;border-right: 0;
}.table_container /deep/ .ivu-table-body {height: calc(100% - 40px);	//減掉表頭的高度overflow-x: hidden;overflow-y: auto;
}.table_container /deep/ .ivu-table-column-center {background-color: #39698D;color: white;
}.table_container /deep/ tbody .ivu-table-column-center {color: #89D5EA;
}.table_container /deep/ .ivu-table {background-color:rgba(255,255,255, 0);color: #89D5EA;
}.table_container /deep/ .ivu-table td {background-color:rgba(255,255,255, 0);border-bottom: 1px solid #496893;
}.table_container /deep/ .ivu-table-tip {color: #89D5EA;
}.table_container /deep/ .ivu-table:before,.table_container /deep/ .ivu-table:after {background-color: rgba(255,255,255, 0);
}.table_container /deep/ .ivu-table th {border-bottom: none;
}/** .ivu-table-body 滾動條樣式*/
.table_container /deep/ .ivu-table-body::-webkit-scrollbar {/*滾動條整體樣式*/width: 5px; /*高寬分別對應橫豎滾動條的尺寸*/height: 3px;
}
.table_container /deep/ .ivu-table-body::-webkit-scrollbar-thumb {/*滾動條里面小方塊*/border-radius: 10px;height: 20px;-webkit-box-shadow: inset 0 0 5px black;
}
.table_container /deep/ .ivu-table-body::-webkit-scrollbar-track {/*滾動條里面軌道*/-webkit-box-shadow: inset 0 0 5px #6B90B6;border-radius: 10px;background: #ffffff;
}
</style>
在引用組件的頁面調用定時滾動方法
<template><div class="layout"><table-list ref="tableList" :columns="columns" :data-list="warehouseList"/></div>
</template><script>
import { columns } from './config'
import tableList from "@/components/tableList";export default {name: "board",components: {tableList,},data () {return {columns,warehouseList: [],resultData: {},}},mounted() {this.getData()},methods: {getData() {getWarehouseList({}).then(res => {console.log('getWarehouseList', res)if(res.success) {this.resultData = res.resultthis.warehouseList = res.result.warehouseListconst tableList = this.$refs.tableList;//動態滾動tableList.dynamicScroll()}})}}
}
</script><style scoped lang="less">
.layout {width: 100%;height: 100%;background:url("../../../assets/prod_board.png") no-repeat center -2px;background-size: 100% 100%;color: #fff;
}
</style>

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/13903.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/13903.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/13903.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vue3 ElementUI 日期禁選當日前, 當日后,幾天后,幾天前(例如3天后)

今日之前禁用 代碼: ( 主要是 :disabledDate“disabledDateFun” ) <el-date-picker v-model"queryForm.selectedDate"type"date"range-separator"-"placeholder"選擇日期":disabledDate"disabledDateFun" clearable /&…

前端面試:項目細節重難點問題分享

面試官提問&#xff1a;我現在給你出一個項目實際遇到的問題&#xff1a;由于后端比較忙&#xff0c;所以我們這邊的列表數據排序需要前端最近實現&#xff0c;那你會怎么實現排序呢&#xff1f; 答&#xff1a;我的回答&#xff1a;確實&#xff0c;數據都是由后端實現的&…

kotlin基礎之空指針檢查、字符串表達式、函數默認值

Kotlin 的空指針檢查 Kotlin 是一種空安全的語言&#xff0c;這意味著它強制開發者明確地處理可能的空值。在 Kotlin 中&#xff0c;所有的變量默認都是非空的&#xff0c;除非顯式地標記為可為空。 聲明可為空的變量 你可以通過在類型后面添加 ? 來聲明一個變量可以為空&a…

基于MetaGPT構建單智能體

前言 在之前的文章中&#xff0c;我們詳細地描述了Agent的概念和組成&#xff0c;在代碼案例中體驗了Agent的記憶、工具、規劃決策模塊&#xff0c;并通過幾個Agent框架來加強讀者對Agent開發設計與應用的理解&#xff0c;接下來我們就要進入智能體Agent的實際開發中&#xff0…

教師專屬的成績發布小程序

還在為成績發布而煩惱&#xff1f;還在擔心家長無法及時獲得孩子的學習反饋&#xff1f;是否想要一個既安全又高效的工具來簡化你的教學工作&#xff1f;那么&#xff0c;易查分小程序可能是你一直在尋找的答案。 現在的老師們有了超多的工具來幫助我們減輕負擔&#xff0c;提高…

多式聯運奇跡:探索 GPT-4o 的尖端功能

取得的顯著進展的DigiOps與人工智能已經標志著重要的里程碑&#xff0c;隨著時間的推移塑造了人工智能系統的能力。從早期基于規則系統的出現機器學習和深入學習&#xff0c;人工智能已經發展得更加先進和通用。 生成式預訓練 Transformer (GPT) by OpenAI 已特別值得注意。每…

微服務遠程調用 RestTemplate

Spring給我們提供了一個RestTemplate的API&#xff0c;可以方便的實現Http請求的發送。 同步客戶端執行HTTP請求&#xff0c;在底層HTTP客戶端庫(如JDK HttpURLConnection、Apache HttpComponents等)上公開一個簡單的模板方法API。RestTemplate通過HTTP方法為常見場景提供了模…

[C++] 小游戲 能量 1.0.0 版本 zty出品

大家好&#xff0c;也是停更了一段時間&#xff0c;這段時間我去學習了&#xff08;其實是摸魚&#xff09;&#xff0c;今天帶來一個新游戲《能量》&#xff0c;規則為&#xff1a;使用能量技能來增加能量&#xff0c;消耗能量使用攻擊技能來攻擊對方&#xff0c;有三個攻擊技…

Algoriddim djay Pro Ai for Mac:AI引領,混音新篇章

當AI遇上音樂&#xff0c;會碰撞出怎樣的火花&#xff1f;Algoriddim djay Pro Ai for Mac給出了答案。這款專業的DJ混音軟件&#xff0c;以AI為引擎&#xff0c;引領我們進入混音的新篇章。 djay Pro Ai for Mac的智能混音功能&#xff0c;讓每一位DJ都能感受到前所未有的創作…

計算機系統基礎 7 分支程序的實現

簡單條件轉移指令 根據單個標志位的值&#xff08;CF&#xff0c; SF&#xff0c;OF&#xff0c;PF&#xff0c;ZF&#xff09;來確定是否轉移&#xff0c; 如果條件成立&#xff0c;則&#xff08;EIP&#xff09; 位移量 ? EIP&#xff0c;否則什么也不做。 注意&#xff0…

深度學習500問——Chapter09:圖像分割(4)

文章目錄 9.10 Mask-RCNN 9.10.1 Mask-RCNN 的網絡結構示意圖 9.10.2 RCNN行人檢測框架 9.10.3 Mask-RCNN 技術要點 9.11 CNN在基于弱監督學習的圖像分割中的應用 9.11.1 Scribble 標記 9.11.2 圖像級別標記 9.11.3 DeepLabbounding boximage-level labels 9.11.4 統一的框架 9…

作為 App 開發者會推薦安裝的 Mac App

Xcode&#xff0c;作為 App 開發者&#xff0c;必須安裝的工具。當然&#xff0c;有經驗的開發者不會從 Mac App Store 下載&#xff0c;而是從網站下載&#xff0c;除了安裝過程更可控&#xff0c;也方便多版本共存。此外&#xff0c;我不信任任何第三方下載方式&#xff1a; …

表面簡單實則暗藏玄機的面試題:Java數組適合做隊列嗎?

Java數組本身是一種線性數據結構&#xff0c;它可以用來存儲一系列固定大小的元素。盡管數組可以用于實現隊列的一些基本操作&#xff0c;比如入隊&#xff08;enqueue&#xff09;和出隊&#xff08;dequeue&#xff09;&#xff0c;但由于其固定的大小&#xff0c;它并不適合…

開關電源重點可靠性測試項目與測試方法

為確保開關電源在復雜工作環境下的安全性與穩定性&#xff0c;各種安全性測試成為不可或缺的環節。本文將深入探討幾項關鍵的安全性測試項目&#xff0c;幫助用戶全面了解如何評估開關電源的可靠性和安全性。 一、過壓保護測試方法 目的是為了檢測當輸出電壓過高時&#xff0c;…

Unity限制鼠標光標位置

限制鼠標光標位置 private void Awake() {Cursor.lockState CursorLockMode.Confined;//Cursor.visible false;隱藏鼠標光標 }●Confined&#xff1a;限制光標到游戲窗口。 ●Locked&#xff1a;鎖定光標到游戲窗口的中心并隱藏。 ●None&#xff1a;不被修改。

項目9-網頁聊天室2(登錄)

0.前端知識儲備 Ajax請求中的async:false/true的作用 - front-gl - 博客園 (cnblogs.com) 01.前端頁面展示 02.后端代碼 2.1 CONTROLLER RequestMapping("/login")public Result login(String username, String password, HttpSession httpSession){User user …

鄉村振興與農村社會治理現代化:加強農村社會治理體系和治理能力現代化建設,提升鄉村治理效能,為美麗鄉村建設提供堅實保障

一、引言 在全面推進鄉村振興的偉大實踐中&#xff0c;農村社會治理現代化是不可或缺的重要一環。隨著時代的發展&#xff0c;傳統的農村社會治理方式已經無法滿足現代社會發展的需求。因此&#xff0c;加強農村社會治理體系和治理能力現代化建設&#xff0c;提升鄉村治理效能…

2024年電工杯數學建模競賽思路資料匯總貼

下文包含&#xff1a;2024電工杯&#xff08;電工杯數學建模競賽&#xff09;思路解析、電工杯參賽時間及規則信息說明、好用的數模技巧及如何備戰數學建模競賽 C君將會第一時間發布選題建議、所有題目的思路解析、相關代碼、參考文獻、參考論文等多項資料&#xff0c;幫助大家…

深度學習(文章鏈接匯總)

神經網絡與深度學習-簡要入門 動手學深度學習-pytorch版本&#xff08;一&#xff09;&#xff1a;引言 & 預備知識 動手學深度學習-pytorch版本&#xff08;二&#xff09;&#xff1a;線性神經網絡 YOLOv8 學習與環境配置

XSS漏洞

漏洞描述 XSS全名叫Cross Site Scripting(跨站腳本攻擊)因為簡寫和css同名所以改名為XSS&#xff0c;該漏洞主要利用javascript可以控制html&#xff0c;css&#xff0c;瀏覽器的行為從而惡意利用&#xff0c;當開發人員未對輸入的內容進行過濾或編碼時&#xff0c;惡意用戶在…