偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

突發(fā)奇想!Vue3 實現(xiàn)消息無限滾動的新思路!

開發(fā) 前端
怎么讓數(shù)據(jù)不斷增加呢,并且增加的規(guī)則是什么呢?其實很簡單,我們每次滾上去一項,就拷貝這一項push 到列表數(shù)據(jù)末端,這樣就能做到數(shù)據(jù)永遠滾不完。

前言

大家好,我是林三心,用最通俗易懂的話講最難的知識點是我的座右銘,基礎(chǔ)是進階的前提是我的初心!

最近有一個需求,需要在頁面中做一個垂直方向的無限滾動,效果基本為如下,這個滾動是一直在持續(xù)的,不斷循環(huán)。

圖片

這個效果挺有意思的,實現(xiàn)起來不難,所以分享一下!

實現(xiàn)

基礎(chǔ)頁面

首先準備一下基礎(chǔ)的頁面,之所以給容器設(shè)置 overflow:hidden 是為了把滾動條給去掉,因為我們并不需要滾動條。

圖片圖片

可以看出有些項是不在容器可視范圍內(nèi)的,且每一項的高度是 22px(每一項的高度可以自己定,我這里就用 22px 來進行示范)。

圖片圖片

滾動起來

接下來得讓這個容器滾動起來,那要怎么滾動呢?可以使用 scrollTo 這個方法來進行滾動~并且為了持續(xù)保持滾動,可以使用 requestAnimationFrame 來不斷進行。

每次都對 top 進行遞增,保證容器不斷向上滾動。

圖片圖片

但是我們可以看到,雖然top 一直在遞增,但是滾動到最后就不動了!這是因為這個時候已經(jīng)滾動到最底部了,那么自然就滾動不了了。

圖片圖片

永遠滾動不完?

上面為啥滾到底部就滾不動了呢?因為到最底部了,所以滾不動了呀!

那么想要永遠滾不完應(yīng)該怎么辦呢?其實有一種辦法,那就是永遠到不了底,那要怎么實現(xiàn)呢?其實很簡單,只要讓數(shù)據(jù)不斷增加就行!

怎么讓數(shù)據(jù)不斷增加呢,并且增加的規(guī)則是什么呢?其實很簡單,我們每次滾上去一項,就拷貝這一項push 到列表數(shù)據(jù)末端,這樣就能做到數(shù)據(jù)永遠滾不完!

圖片圖片

下面是代碼實現(xiàn),為什么是除以22 呢?因為每一項的高度是 22px。

圖片圖片

現(xiàn)在可以達到想要的無限滾動效果。

圖片圖片

數(shù)據(jù)不斷增長?

但是其實上面的做法還是有缺點的,因為數(shù)據(jù)不斷地push也就是不斷地增加,如果頁面保持一段時間的話,會大大占用內(nèi)存,導(dǎo)致頁面卡頓!!

所以我們可以在適當(dāng)?shù)臅r間點,去初始化數(shù)據(jù),也就是把數(shù)據(jù)恢復(fù)到一開始樣子,這樣就能避免數(shù)據(jù)不斷增加了!

那么應(yīng)該在什么時機去初始化數(shù)據(jù)呢?并且要怎么初始化才能讓用戶察覺不出來呢?怎么做到無縫銜接進行初始化呢?

通過一個圖告訴大家~其實最好的時機就是在剛好滾動完一輪的時候。

圖片圖片

最終代碼實現(xiàn)如下:

圖片圖片

最終實現(xiàn)效果:

圖片 圖片

責(zé)任編輯:武曉燕 來源: 前端之神
相關(guān)推薦

2022-09-20 11:00:14

Vue3滾動組件

2023-03-27 09:25:21

CSS自定義彩色字體

2021-12-02 05:50:35

Vue3 插件Vue應(yīng)用

2022-03-10 11:04:04

Vue3Canvas前端

2017-01-23 11:18:16

戴爾

2009-12-03 10:32:21

2021-12-01 08:11:44

Vue3 插件Vue應(yīng)用

2023-12-07 13:14:54

2012-05-10 14:02:46

jQuery

2024-05-09 08:20:29

AC架構(gòu)數(shù)據(jù)庫冗余存儲

2023-06-30 10:18:19

ChatGPT算法

2024-03-21 08:34:49

Vue3WebSocketHTTP

2021-11-30 08:19:43

Vue3 插件Vue應(yīng)用

2015-05-07 14:24:36

everRun

2023-11-28 09:03:59

Vue.jsJavaScript

2020-09-19 21:15:26

Composition

2024-02-01 09:10:04

頁面引導(dǎo)工具Vue3

2022-06-26 00:00:02

Vue3響應(yīng)式系統(tǒng)

2022-12-13 15:00:23

ChatGPTAI

2024-04-18 08:53:15

Vue3數(shù)字動畫
點贊
收藏

51CTO技術(shù)棧公眾號