您好,登錄后才能下訂單哦!
這篇文章主要介紹“vue怎么使用動畫實現滾動表格效果”,在日常操作中,相信很多人在vue怎么使用動畫實現滾動表格效果問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”vue怎么使用動畫實現滾動表格效果”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
在一些大屏項目中,需要使用到表格行數據滾動。
vue代碼如下
<template> <div > <div class="table-header table-row"> <div class="table-cell" >計劃名稱</div> <div class="table-cell" >核心企業</div> <div class="table-cell" >發行狀態</div> <div class="table-cell" >金額(元)</div> </div> <div class="table-body"> <div :class="{ 'scroll-wrap': getPlayData.length > 0 }"> <div class="table-row" :class="{ hasBgc: index % 2 === 0 }" v-for="(item, index) in getPlayData" :key="index" :ref="'row_' + index" > <div class="table-cell" :title="item.productName"> {{ item.productName }} </div> <div class="table-cell" :title="item.coreName">{{ item.coreName }}</div> <div class="table-cell" :title="item.publish">{{ item.publish }}</div> <div class="table-cell" :title="item.publishAmount"> {{ item.publishAmount }} </div> </div> </div> </div> </div> </template> <script> export default { props: { data: { type: Array, default: () => { return []; }, }, }, data() { return { initMt: 0, // getPlayData:[], visible: true, stop: false, }; }, methods: { play() { const row = this.$refs["row_0"][0]; setTimeout(() => { this.visible = false; this.$nextTick(() => { this.initMt++; if (this.initMt === this.data.length) { this.initMt = 0; } this.visible = true; }); this.play(); }, 2000); }, }, watch: { }, computed: { getPlayData() { return this.data.concat(this.data.slice(0, 4)); }, }, mounted() { // this.play(); }, }; </script> <style lang="scss" scoped> $cellHeight: 35px; .table-row { display: flex; line-height: 35px; height: 35px; transition: all 0.3s; border-bottom: 1px solid rgba(63, 88, 114, 1); } .table-header { color: rgba(87, 150, 190, 1); } .table-cell { text-align: left; font-size: 12px; text-overflow: ellipsis; overflow: hidden; } // .hasBgc { // background: rgb(0, 59, 81); // } .hidden-row { height: 0 !important; line-height: 0 !important; display: none !important; } .table-body { height: 142px; overflow-y: hidden; .table-row { color: #fff; } } .scroll-wrap { animation: scroll 18s linear infinite; position: relative; } .scroll-wrap:hover { animation-play-state: paused; } @keyframes scroll { from { top: 0; } to { top: -8 * $cellHeight; } } </style>
通過動畫動態改變表格的位置來達到移動的效果。把數據的一半拼接在原數據上作為滾動數據,達到銜接的效果。
到此,關于“vue怎么使用動畫實現滾動表格效果”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。