微信小程序?qū)崿F(xiàn)下滑到底部自動翻頁功能
前言
這段時間接了一個微信小程序項目,從此打開小程序的新世界大門。然后發(fā)現(xiàn)使用頁碼進行翻頁已經(jīng)不適用于手機app,我們?nèi)粘V袑嵱玫氖謾Capp或者小程序進行翻頁一般都是使用底部后下拉的方式。
解決思路
我發(fā)現(xiàn)微信小程序遠程組件提供了一個scroll-view(可滾動視圖區(qū)域),這個組件中有個屬性,bindscrolltolower能夠監(jiān)聽區(qū)域內(nèi)滑到了最后一個位置。這就能用來解決和實現(xiàn)我們提出的問題。當用戶滑到最后一個元素,觸發(fā)函數(shù),我們在該函數(shù)中請求下一頁的數(shù)據(jù),然后追加到展示列表里。ps:需要一個變量來存儲當前頁碼

實現(xiàn)
wxml:
<scroll-view class="scroll_view" scroll-y bindscrolltolower="nextPage">
<view style="height:100vh">
<block wx:for="{{lists}}" wx:for-index="index" wx:for-item="item" wx:key="unique">
<view style="height:10vh;border:1rpx solid red">
{{item}}
</view>
</block>
</view>
</scroll-view>
wxss:
.scroll_view{
height:100vh;
}
js:
Page({
data: {
lists: [],
page: 1
},
//監(jiān)聽是否滑到底部
nextPage: function () {
let new_lists = [];
let page = this.data.page;
let startindex = page * 10 + 1;
console.log("第" + page + "頁滑到底部了,請求第" + (page + 1) + "頁");
page += 1;
//模擬請求
for (let i = startindex; i <= startindex + 9; i++) {
new_lists.push(i);
}
this.setData({ lists: this.data.lists.concat(new_lists), page: page });
},
onLoad: function (options) {
let lists = [];
//模擬請求
for (let i = this.data.page; i <= this.data.page + 9; i++) {
lists.push(i)
}
this.setData({ lists: lists, });
},
})
效果:

說明
我這里沒有做判斷是否請求到最后一頁,我們一般后臺邏輯是當請求當前頁碼為空時說明上一頁已經(jīng)是最后一頁了。我們可以在nextPage函數(shù)論進行相應(yīng)的邏輯判斷處理,我這里就不展示了,大家自己實現(xiàn),不會的給我留個言。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
js 在定義的時候立即執(zhí)行的函數(shù)表達式(function)寫法
如果不需要顯示調(diào)用函數(shù), 讓這個函數(shù)在定義的時候就執(zhí)行的話, 該如何寫才可以呢,接下來將詳細介紹實現(xiàn)步驟,感興趣的朋友可以了解下2013-01-01
js獲取對象、數(shù)組的實際長度,元素實際個數(shù)的實現(xiàn)代碼
下面小編就為大家?guī)硪黄猨s獲取對象、數(shù)組的實際長度,元素實際個數(shù)的實現(xiàn)代碼。小編覺得挺不錯的,現(xiàn)在就分享 給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-06-06
layui 對table中的數(shù)據(jù)進行轉(zhuǎn)義的實例
今天小編就為大家分享一篇layui 對table中的數(shù)據(jù)進行轉(zhuǎn)義的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09
JavaScript無提示關(guān)閉窗口(兼容IE/Firefox/Chrome)
JavaScript無提示關(guān)閉當前頁面窗口,兼容IE/Firefox/Chrome (Close the current page window without confirm by JavaScript, support all browsers)2008-11-11
JavaScript詳解使用Promise處理回調(diào)地獄的兩種方法
這篇文章主要介紹了JavaScript詳解使用Promise處理回調(diào)地獄的兩種方法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-11-11

