您好,登錄后才能下訂單哦!
今天介紹微信小程序中scroll-view實現(xiàn)橫向滾動和上拉加載的實現(xiàn)及需要注意的地方。
先看最終效果。
橫向滾動
1.設(shè)置滾動項display:inline-block;
2.設(shè)置滾動視圖容器white-space: nowrap;
3.滾動項不要用float
為什么會有以上三點要求呢?
其實橫向滾動官方文檔中是沒有做太多說明的,只說明需要定義scroll-view滾動方向scroll-x=true允許橫向滾動,但是我在實踐的時候我發(fā)現(xiàn),你要橫向滾動,首先你得是一排吧。所以才發(fā)現(xiàn)需要定義滾動項及容器的一些屬性,浮動是不能讓所有的滾動項一排顯示的。
上拉加載
實現(xiàn)上拉加載,只需要綁定bindscrolltolower 事件處理,當(dāng)滾動到底部/左邊的時候,觸發(fā)這個處理函數(shù),邏輯上就是去請求下一頁的數(shù)據(jù),并且視圖上顯示正在加載的樣式,當(dāng)數(shù)據(jù)請求成功,將其拼合到之前的數(shù)據(jù)中,并隱藏正在加載的樣式。
//下拉加載 pullUpLoad: function(){ var that = this; console.log("====下拉====") if (!that.data.hidden) { that.data.params.pageNo += 1; that.setData({ params: that.data.params, }) if(that.data.params.pageNo <= that.data.totalPages){ that.setData({ hidden: true, }) that.getShareList(); }else{ that.setData({ hidden: false, }) } } }
如何設(shè)置scroll-view滿屏滾動
文檔中說到:使用豎向滾動時,需要給一個固定高度,通過 WXSS 設(shè)置 height。
那么我們想讓小程序滿屏滾動該如何設(shè)置高度呢,直接設(shè)置height:100%?好像不是很好用,原因是因為這個高度沒有參照物,以前我們是設(shè)置body的高度,類似,我們這里發(fā)現(xiàn)小程序頁面渲染出來的容器是Page,那我們就先設(shè)置Page的高度100%,再設(shè)置scroll-view高度100%,問題得到解決。
官方推薦的loading效果
onLoad:function(options){ wx.showToast({ title: '加載中', icon: 'loading', duration: 10000//loading時間 }); //wx.hideToast();隱藏loading }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。