淺談小程序中實現(xiàn)下拉刷新與加載更多效果的方法
Jun 30, 2021 am 11:33 AM本篇文章給大家介紹一下微信小程序中實現(xiàn)下拉刷新與加載更多效果的幾種方法,幾乎所有APP里都有下拉刷新和加載更多,希望大家可以掌握!
【相關(guān)學(xué)習(xí)推薦:小程序開發(fā)教程】
##下拉刷新
實現(xiàn)下拉刷新目前能想到的有兩種方式
1、調(diào)用系統(tǒng)的API,系統(tǒng)有提供下拉刷新的API接口
2、監(jiān)聽scroll-view,自定義下拉刷新,還記得scroll-view里面有一個bindscrolltoupper屬性嗎?忘記請自行回顧上一篇 微信小程序?qū)崙?zhàn)篇-電商(二)當(dāng)滾動到頂部/左邊,會觸發(fā) scrolltoupper 事件,所以我們可以利用這個屬性,來實現(xiàn)下拉刷新功能。
兩種方法都可以,第一種比較簡單,易上手,畢竟一些邏輯系統(tǒng)已經(jīng)給你處理好了,第二種適合那種想要自定義下拉刷新樣式的小程序,我們講解電商,就用第一種,系統(tǒng)提供的就好,主要是教會大家怎么用。以首頁為例
1、home.json 參數(shù)配置
"enablePullDownRefresh": true
我們哪個頁面需要下拉刷新,就在哪個頁面對應(yīng)的xxx.json文件配置上面屬性,這個屬性從字面意思也可以知道,是否允許下拉刷新,當(dāng)然,如何你不想一個個配置允許下拉刷新,你可以直接在全局變量app.json的window里面配置上面這個屬性,這樣整個項目都允許下拉刷新了,這個一定要加的,因為系統(tǒng)默認(rèn)是不具備下拉刷新功能的
2、home.js
//下拉刷新 onPullDownRefresh:function() { wx.showNavigationBarLoading() //在標(biāo)題欄中顯示加載 //模擬加載 setTimeout(function() { // complete wx.hideNavigationBarLoading() //完成停止加載 wx.stopPullDownRefresh() //停止下拉刷新 },1500); },
onPullDownRefresh 下拉刷新事件監(jiān)聽,具體看一下里面的代碼,wx.showNavigationBarLoading() 與wx.hideNavigationBarLoading() 這兩句話是用來控制小菊花的顯示和隱藏,由于我們現(xiàn)在還沒有講解網(wǎng)絡(luò)請求,所以我就模擬了一下網(wǎng)絡(luò)加載,通過setTimeout方法,寫一個時間延遲的方法,這個方法可以模擬網(wǎng)絡(luò)加載所消耗的時間,還有就是當(dāng)網(wǎng)絡(luò)加載完成我們要停止下拉刷新wx.stopPullDownRefresh() 。
這個到目前為止下拉刷新的功能已經(jīng)完成了,但是還不夠完美,還是有點怪怪的,就是下拉刷新沒有動畫,有木有~我那時也感到奇怪,微信封裝的下拉刷新怎么可能這樣吶,后來我參考別人寫的代碼,發(fā)現(xiàn)一個小坑,先看一下我填完坑的效果吧
怎么樣,是不是順眼多了,想知道我是怎么加入這個動畫的嘛,讓我來給你揭曉,其實很簡單,只需要一句話代碼在app.json中window里配置下面屬性,這個是配置整個系統(tǒng)的背景顏色,為什么我配置系統(tǒng)顏色就會出現(xiàn)下拉刷新了吶,原因就在下拉刷新的動畫本身就有,只不過當(dāng)我們沒配置背景顏色,系統(tǒng)默認(rèn)就為白色,動畫也是白色,所以我們就看不到動畫效果,是不是有點坑,哈哈~~
"backgroundColor": "#f0145a"
##加載更多
實現(xiàn)加載更多也同理有兩種方式
調(diào)用系統(tǒng)的API
監(jiān)聽scroll-view,bindscrolltolower滑動到底部的監(jiān)聽
我還是拿第一種實現(xiàn)方式講解,處理方式和下拉刷新略有不同,不過也大同小異吧,還是以首頁為例
1、home.js
//加載更多 onReachBottom: function () { console.log('加載更多') setTimeout(() => { this.setData({ isHideLoadMore: true, recommends: [ { goodId: 7, name: 'OLAY玉蘭油精油沐浴露玫瑰滋養(yǎng)二合一450ml', url: 'bill', imageurl: 'http://mz.djmall.xmisp.cn/files/product/20161213/148162245074.jpg', newprice: "¥36.60", oldprice: "¥40.00", }, { goodId: 10, name: '蘭蔻玫瑰清瀅保濕柔膚水嫩膚水化妝水400ml補(bǔ)水保濕溫和不刺激', url: 'bill', imageurl: 'http://mz.djmall.xmisp.cn/files/product/20161201/148057937593.jpg', newprice: "¥30.00", oldprice: "¥80.00", }, { goodId: 11, name: 'Lancome/蘭蔻清瑩柔膚爽膚水/粉水400ml補(bǔ)水保濕玫瑰水化妝水', url: 'bill', imageurl: 'http://mz.djmall.xmisp.cn/files/product/20161201/148057953326.jpg', newprice: "¥30.00", oldprice: "¥80.00", }, { goodId: 12, name: '美國CLINIQUE倩碧黃油無油/特效潤膚露125ml', url: 'bill', imageurl: 'http://mz.djmall.xmisp.cn/files/product/20161201/14805828016.jpg', newprice: "¥239.00", oldprice: "¥320.00", }, { goodId: 13, name: '法國LANCOME蘭蔻柔皙輕透隔離防曬乳霜50ML2017年3月到期', url: 'bill', imageurl: 'http://mz.djmall.xmisp.cn/files/product/20161201/148058014894.jpg', newprice: "¥130.00", oldprice: "¥180.00", }, ], }) }, 1000) }
onReachBottom系統(tǒng)提供的觸底事件的監(jiān)聽,和下拉刷新一樣,我們也是模擬一些數(shù)據(jù),加了一個時間延遲的事件,isHideLoadMore,一個自定義的值,用來控制顯示和隱藏加載控件
2、home.wxml
<view class="weui-loadmore" hidden="{{isHideLoadMore}}"> <view class="weui-loading"></view> <view class="weui-loadmore__tips">正在加載</view> </view>
在home.wxml底部加入上面的代碼,這是加載更多的控件,加載更多待遇就沒下拉刷新待遇好,系統(tǒng)并沒有提供加載更多的控件動畫,所以我們需要自己制作
3、home.wxss
/* 加載更多 */ .weui-loading { margin: 0 5px; width: 20px; height: 20px; display: inline-block; vertical-align: middle; -webkit-animation: weuiLoading 1s steps(12, end) infinite; animation: weuiLoading 1s steps(12, end) infinite; background: transparent url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgxMDB2MTAwSDB6Ii8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTlFOUU5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgLTMwKSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iIzk4OTY5NyIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgzMCAxMDUuOTggNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjOUI5OTlBIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDYwIDc1Ljk4IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0EzQTFBMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCA2NSA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNBQkE5QUEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoMTIwIDU4LjY2IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0IyQjJCMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgxNTAgNTQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjQkFCOEI5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDE4MCA1MCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDMkMwQzEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTE1MCA0NS45OCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDQkNCQ0IiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTEyMCA0MS4zNCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNEMkQyRDIiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTkwIDM1IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0RBREFEQSIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgtNjAgMjQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTJFMkUyIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKC0zMCAtNS45OCA2NSkiLz48L3N2Zz4=) no-repeat; background-size: 100%; } .weui-loadmore { width: 65%; margin: 1.5em auto; line-height: 1.6em; font-size: 14px; text-align: center; } .weui-loadmore__tips { display: inline-block; vertical-align: middle; }
這個是我們自定義的樣式,樣式很簡單,就是一個簡單的加載小菊花,這里我要講解的是 weui-loading 樣式里設(shè)置 background,data:image/svg+xml;base64這個是什么意思吶,我們之前一般設(shè)置背景直接加入顏色,這個是background的另一種用法,加入圖片,這個圖片還有點特別是base64格式,并用svg繪制的,當(dāng)然你還可以直接把url里面寫入圖片路徑也是可以的,好,下面我們一起看一下效果吧!
##總結(jié)
今天就講到這里,下拉刷新和加載更多都是前端程序必備的知識,幾乎所有APP里都有下拉刷新和加載更多,所以大家一定要掌握,這里主要講解的是小程序自帶的下拉刷新與加載更多API,大家可以試著挑戰(zhàn)一下用第二種方式,實現(xiàn)一下~
更多編程相關(guān)知識,請訪問:編程視頻??!
Atas ialah kandungan terperinci 淺談小程序中實現(xiàn)下拉刷新與加載更多效果的方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Portal log masuk untuk versi web Douyin adalah https://www.douyin.com/. Langkah -langkah log masuk termasuk: 1. Buka penyemak imbas; 2. Masukkan URL https://www.douyin.com/; 3. Klik butang "Masuk" dan pilih kaedah log masuk; 4. Masukkan kata laluan akaun; 5. Log masuk lengkap. Versi Web menyediakan fungsi seperti melayari, mencari, interaksi, memuat naik video dan pengurusan laman web peribadi, dan mempunyai kelebihan seperti pengalaman skrin besar, pelbagai tugas, pengurusan akaun mudah dan statistik data.

Komik menyalin tidak diragukan lagi sebagai harta yang tidak dapat dilepaskan. Di sini anda boleh menemui komik bola keranjang dalam pelbagai gaya, dari cerita kompetitif yang bersemangat dan inspirasi untuk komedi harian yang santai dan lucu. Sama ada anda ingin menghidupkan semula klasik atau menemui karya baru, menyalin komik dapat memenuhi keperluan anda. Melalui portal bacaan dalam talian yang disediakan oleh Copy Comics, anda akan mengucapkan selamat tinggal kepada masalah sumber cetak rompak, menikmati pengalaman membaca yang tinggi dan lancar, dan dapat menyokong pengarang komik kegemaran anda dan menyumbang kepada pembangunan komik yang sahih.

Memilih penyemak imbas UC atau penyemak imbas QQ bergantung kepada keperluan anda: 1. Pelayar UC sesuai untuk pengguna yang mengejar fungsi hiburan yang cepat dan kaya; 2. Pelayar QQ sesuai untuk pengguna yang memerlukan kestabilan dan sambungan lancar dengan produk Tencent.

Menggabungkan trend industri terkini dan data penilaian pelbagai dimensi pada tahun 2025, yang berikut adalah cadangan perisian penulisan AI yang komprehensif, yang meliputi senario arus perdana seperti penciptaan umum, penyelidikan akademik, dan pemasaran komersial, sambil mengambil kira perkhidmatan pengoptimuman dan penyetempatan Cina:

Komik yang bagus, platform pengalaman membaca yang mendalam yang didedikasikan untuk mencipta pencinta komik, menyatukan sejumlah besar sumber komik berkualiti tinggi di rumah dan di luar negara. Ia bukan sahaja platform membaca komik, tetapi juga komuniti yang menghubungkan artis komik dan pembaca dan berkongsi budaya komik. Melalui reka bentuk antara muka yang mudah dan intuitif dan fungsi carian yang kuat, NES Comics membolehkan anda dengan mudah mencari karya kegemaran anda dan menikmati pengalaman membaca yang lancar dan selesa. Katakan selamat tinggal kepada operasi yang lama menunggu dan membosankan, masukkan dunia komik yang bagus dengan serta -merta dan mulakan perjalanan komik anda!

Komik Frogman telah menjadi pilihan pertama bagi banyak pencinta komik dengan sumber komik yang kaya dan pelbagai dan pengalaman membaca dalam talian yang mudah dan lancar. Ia seperti kolam yang bersemangat, dengan cerita -cerita segar dan menarik yang sentiasa muncul, menunggu anda menemui dan meneroka. Frog Man Comics meliputi pelbagai subjek, dari pengembaraan yang ghairah hingga cinta manis, dari fantasi dan fiksyen sains untuk penangguhan yang menggembirakan, tidak kira genre yang anda suka, anda dapat mencari karya kegemaran anda di sini. Reka bentuk antara muka yang mudah dan intuitif membolehkan anda dengan mudah memulakan, dengan cepat mencari komik yang anda ingin baca, dan tenggelamkan diri anda dalam dunia komik yang menarik.

Di sini, anda boleh menikmati lautan komik yang luas dan meneroka karya-karya pelbagai tema dan gaya, dari komik lelaki muda yang ghairah hingga komik gadis yang halus dan bergerak, dari komik misteri yang membosankan dan membakar otak untuk komik harian yang santai dan lucu, ada segala-galanya, dan selalu ada yang dapat menyentuh hati anda. Kami bukan sahaja mempunyai sejumlah besar sumber komik yang tulen, tetapi juga sentiasa memperkenalkan dan mengemas kini kerja -kerja terkini untuk memastikan bahawa anda dapat membaca komik kegemaran anda secepat mungkin.

Laman web rasmi terbaru 2025b anhui adalah: https://www.marketwebb.co/zh-cn/join?ref=507720986& ;type=wenzi; Binance Exchange adalah pertukaran cryptocurrency global yang melayani 180 negara dan wilayah termasuk Amerika Utara, Eropah, Taiwan, Timur Tengah, Hong Kong, dan Malaysia. Ia menyediakan lebih daripada 600 kriptografi dan mempunyai 270 juta pengguna berdaftar di seluruh dunia.
