微信小程式清單的上拉刷新和上拉加載
##1.介紹幾個元件
###1.1 scroll-view 組件
這裡寫圖描述
注意:使用垂直捲動時,需要給予固定高度,透過 WXSS 設定 height。 ###1.2 image元件
這裡寫圖描述
注意:mode有12種模式,其中3種是縮放模式,9種是裁切模式。 ###1.3 Icon組件 這裡寫圖片描述
iconType: [ 'success', 'info', 'warn', 'waiting', 'safe_success', 'safe_warn', 'success_circle', 'success_no_circle', 'waiting_circle', 'circle', 'download', 'info_circle' , 'cancel', 'search', 'clear' ]
2.列表的上拉載入和下拉刷新的實作
##2.1先來張效果圖 這裡寫圖片描述 ##2.2邏輯很簡單,直接上程式碼 ###2.2.1 detail.wxml 版面配置檔
<loading hidden="{{hidden}}" bindchange="loadingChange">
載入中...
</loading>
<scroll-view scroll-y="true" style="height: 100%;" bindscrolltolower="loadMore" bindscrolltoupper="refesh">
<view wx:if="{{hasRefesh}}" style="display: flex;flex-direction: row;align-items: center;align-self: center;justify-content: center;">
<icon type="waiting" size="45"/><text>刷新中...</text></view>
<view wx:else style="display:none" ><text></text></view>
<view class="lll" wx:for="{{list}}" wx:for-item="item" bindtap="bindViewTap"
data-title="{{item.title}}" >
<image style=" width: 50px;height: 50px;margin: 20rpx;" src="{{item.firstImg}}" ></image>
<view class="eee" >
<view style="margin:5px;font-size:8px"> 標題:{{item.title}}</view>
<view style="margin:5px;color:red;font-size:6px"> 來源:{{item.source}}</view>
</view>
</view>
<view class="tips1">
<view wx:if="{{hasMore}}" style="display: flex;flex-direction: row;align-items: center;align-self: center;justify-content: center;">
<icon type="waiting" size="45"/><text>玩命的載入中...</text></view>
<view wx:else><text>沒有更多內容了</text></view>
</view>
</scroll-view>
###2.2.1 detail.js邏輯程式碼檔案
var network_util = require('../../utils/network_util.js');
var json_util = require('../../utils/json_util.js');
Page({
data:{
// text:"這是一個頁面"
list:[],
dd:'',
hidden:false,
page: 1,
size: 20,
hasMore:true,
hasRefesh:false
},
onLoad:function(options){
var that = this;
var url = 'http://v.juhe.cn/weixin/query?key=f16af393a63364b729fd81ed9fdd4b7d&pno=1&ps=10';
network_util._get(url,
function(res){
that.setData({
list:res.data.result.list,
hidden: true,
});
},function(res){
console.log(res);
});
},
onReady:function(){
// 頁面渲染完成
},
onShow:function(){
// 頁面顯示
},
onHide:function(){
// 頁面隱藏
},
onUnload:function(){
// 頁面關閉
},
//點選事件處理
bindViewTap: function(e) {
console.log(e.currentTarget.dataset.title);
},
//載入更多
loadMore: function(e) {
var that = this;
that.setData({
hasRefesh:true,});
if (!this.data.hasMore) return
var url = 'http://v.juhe.cn/weixin/query?key=f16af393a63364b729fd81ed9fdd4b7d&pno='+(++that.data.page)+'&ps=10';
network_util._get(url,
function(res){
that.setData({
list: that.data.list.concat(res.data.result.list),
hidden: true,
hasRefesh:false,
});
},function(res){
console.log(res);
})
},
//刷新處理
refesh: function(e) {
var that = this;
that.setData({
hasRefesh:true,
});
var url = 'http://v.juhe.cn/weixin/query?key=f16af393a63364b729fd81ed9fdd4b7d&pno=1&ps=10';
network_util._get(url,
function(res){
that.setData({
list:res.data.result.list,
hidden: true,
page:1,
hasRefesh:false,
});
},function(res){
console.log(res);
})
},
})
###1.1 scroll-view 組件
這裡寫圖描述
注意:使用垂直捲動時,需要給予固定高度,透過 WXSS 設定 height。 ###1.2 image元件
這裡寫圖描述
注意:mode有12種模式,其中3種是縮放模式,9種是裁切模式。 ###1.3 Icon組件 這裡寫圖片描述
iconType: [ 'success', 'info', 'warn', 'waiting', 'safe_success', 'safe_warn', 'success_circle', 'success_no_circle', 'waiting_circle', 'circle', 'download', 'info_circle' , 'cancel', 'search', 'clear' ]
2.列表的上拉載入和下拉刷新的實作
##2.1先來張效果圖 這裡寫圖片描述 ##2.2邏輯很簡單,直接上程式碼 ###2.2.1 detail.wxml 版面配置檔
<loading hidden="{{hidden}}" bindchange="loadingChange">
載入中...
</loading>
<scroll-view scroll-y="true" style="height: 100%;" bindscrolltolower="loadMore" bindscrolltoupper="refesh">
<view wx:if="{{hasRefesh}}" style="display: flex;flex-direction: row;align-items: center;align-self: center;justify-content: center;">
<icon type="waiting" size="45"/><text>刷新中...</text></view>
<view wx:else style="display:none" ><text></text></view>
<view class="lll" wx:for="{{list}}" wx:for-item="item" bindtap="bindViewTap"
data-title="{{item.title}}" >
<image style=" width: 50px;height: 50px;margin: 20rpx;" src="{{item.firstImg}}" ></image>
<view class="eee" >
<view style="margin:5px;font-size:8px"> 標題:{{item.title}}</view>
<view style="margin:5px;color:red;font-size:6px"> 來源:{{item.source}}</view>
</view>
</view>
<view class="tips1">
<view wx:if="{{hasMore}}" style="display: flex;flex-direction: row;align-items: center;align-self: center;justify-content: center;">
<icon type="waiting" size="45"/><text>玩命的載入中...</text></view>
<view wx:else><text>沒有更多內容了</text></view>
</view>
</scroll-view>
###2.2.1 detail.js邏輯程式碼檔案
var network_util = require('../../utils/network_util.js');
var json_util = require('../../utils/json_util.js');
Page({
data:{
// text:"這是一個頁面"
list:[],
dd:'',
hidden:false,
page: 1,
size: 20,
hasMore:true,
hasRefesh:false
},
onLoad:function(options){
var that = this;
var url = 'http://v.juhe.cn/weixin/query?key=f16af393a63364b729fd81ed9fdd4b7d&pno=1&ps=10';
network_util._get(url,
function(res){
that.setData({
list:res.data.result.list,
hidden: true,
});
},function(res){
console.log(res);
});
},
onReady:function(){
// 頁面渲染完成
},
onShow:function(){
// 頁面顯示
},
onHide:function(){
// 頁面隱藏
},
onUnload:function(){
// 頁面關閉
},
//點選事件處理
bindViewTap: function(e) {
console.log(e.currentTarget.dataset.title);
},
//載入更多
loadMore: function(e) {
var that = this;
that.setData({
hasRefesh:true,});
if (!this.data.hasMore) return
var url = 'http://v.juhe.cn/weixin/query?key=f16af393a63364b729fd81ed9fdd4b7d&pno='+(++that.data.page)+'&ps=10';
network_util._get(url,
function(res){
that.setData({
list: that.data.list.concat(res.data.result.list),
hidden: true,
hasRefesh:false,
});
},function(res){
console.log(res);
})
},
//刷新處理
refesh: function(e) {
var that = this;
that.setData({
hasRefesh:true,
});
var url = 'http://v.juhe.cn/weixin/query?key=f16af393a63364b729fd81ed9fdd4b7d&pno=1&ps=10';
network_util._get(url,
function(res){
that.setData({
list:res.data.result.list,
hidden: true,
page:1,
hasRefesh:false,
});
},function(res){
console.log(res);
})
},
})
免責聲明
本站所有資源皆由網友貢獻或各大下載網站轉載。請自行檢查軟體的完整性!本站所有資源僅供學習參考。請不要將它們用於商業目的。否則,一切後果都由您負責!如有侵權,請聯絡我們刪除。聯絡方式:admin@php.cn
相關文章
如何從 .NET EXE 檔案中恢復遺失的 C# 原始碼?
17 Jan 2025
從 .NET EXE 產生 C# 原始程式碼當 C# 應用程式的原始程式碼遺失時,從 EXE 檔案產生程式碼可能至關重要...
如何從 .NET EXE 檔案恢復 C# 原始碼?
17 Jan 2025
從 .NET EXE 恢復 C# 原始碼:已部署的 .NET 應用程式的原始程式碼遺失可能是一個令人沮喪的困境。為了解決...
如何在 Visual Studio 中檢查預處理的 C/C 程式碼?
23 Dec 2024
在 Visual Studio 中檢查預處理原始程式碼 Visual Studio 提供了多種方法來檢查 C/C 檔案的預處理原始程式碼。讓我們...
為什麼我的 PHP 程式碼沒有執行,而是顯示為 HTML?
22 Dec 2024
問題:PHP 程式碼未執行,在原始程式碼中顯示為 HTML 當嘗試在專案中執行 PHP 程式碼時,它保持惰性,顯示...
為什麼我的 PHP 程式碼沒有執行,儘管我可以在原始程式碼中看到它?
27 Dec 2024
儘管原始程式碼可見,PHP 程式碼仍不執行當嘗試在專案中執行 PHP 程式碼時,使用者可能會遇到以下情況:
Hot Tools
微信小程式demo:仿商城
微信小程式demo:仿商城,上手簡單,對商城的一些基本的功能有很好的涉及
外帶:實現類似錨點功能
正是大家需要的類似錨點功能,另外也實現了一些外帶app的典型點菜功能,推薦學習研究;
微信小程式demo:樂助
微信小程式demo:樂助:類似基於地理位置的到位;助人應用,與張小龍的小程式精神有點相似。
微信小程式遊戲類demo挑選不同色塊
微信小程式遊戲類demo挑選不同色塊
微信小程式demo:輪播圖變換
輪播圖樣式變換,簡單的一個用小程式實現的輪播圖,寫法容易
熱門文章
崩壞:星穹鐵道 - 所有金色替罪羊謎題解決方案
18 Jan 2025
手游攻略
印第安納瓊斯與大圈:高棉齒輪位置指南
27 Dec 2024
手游攻略
印第安納瓊斯與大圓圈:軌跡 Boss 戰鬥指南
24 Dec 2024
手游攻略
如何在SQL中隨機選擇行?
17 Jan 2025
mysql教程
Tales Of Graces F 重製版:所有鎖定的寶箱密碼
18 Jan 2025
手游攻略