>  기사  >  웹 프론트엔드  >  WeChat 애플릿에서 목록의 풀다운 새로 고침 및 풀업 로딩 효과를 얻는 방법은 무엇입니까?

WeChat 애플릿에서 목록의 풀다운 새로 고침 및 풀업 로딩 효과를 얻는 방법은 무엇입니까?

亚连
亚连원래의
2018-06-08 11:23:132110검색

이 글에서는 주로 목록 풀다운 새로 고침 및 풀업 로딩을 구현하는 WeChat 애플릿을 자세히 소개합니다. 이는 특정 참고 가치가 있습니다. 관심 있는 친구는 이를 참조할 수 있습니다.

이 글의 예는 Android의 구체적인 구현을 공유합니다. 9각형 그리드 그림 표시 코드입니다. 참고로 구체적인 내용은 다음과 같습니다

DEMO download

Rendering

WeChat 애플릿에서 목록의 풀다운 새로 고침 및 풀업 로딩 효과를 얻는 방법은 무엇입니까?

Principle

onPullDownRefresh 기능 사용(풀다운 새로 고침 모니터링 기능) 및 WeChat 애플릿 기능의 onReachBottom 기능(풀업 로딩 모니터링 기능)은 페이지의 풀다운 및 풀업 역학을 모니터링하여 페이지 데이터를 수정합니다!

페이지 구성 JSON

  • enablePullDownRefresh: 풀다운 새로 고침 활성화

  • onReachBottomDistance: 페이지 풀다운 이벤트가 트리거될 때 페이지 하단으로부터의 거리(px)입니다.

{
 "enablePullDownRefresh": true,
 "onReachBottomDistance": 50
}

WXML

<view class="tui-content">
 <view class="tui-menu-list" wx:for="{{dataList}}">Item -- {{item}}</view>
</view>

JS

여기서 setTimeout을 사용하여 요청 데이터를 시뮬레이션하세요.
데이터 로드는 3번으로 제한되며 wx.showToast를 호출하면 더 이상 데이터가 없음을 알 수 있습니다.

Page({
 data: {
 dataList: [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20],
 count : 0
 },
 onPullDownRefresh(){
 var self = this;
 setTimeout(() => {
  // 模拟请求数据,并渲染
  var arr = self.data.dataList, max = Math.max(...arr);
  for (var i = max + 1; i <= max + 3; ++i) {
  arr.unshift(i);
  }
  self.setData({ dataList: arr });
  // 数据成功后,停止下拉刷新
  wx.stopPullDownRefresh();
 }, 1000);
 },
 onReachBottom(){
 var arr = this.data.dataList, max = Math.max(...arr);
 if (this.data.count < 3) {
  for (var i = max + 1; i <= max + 5; ++i) {
  arr.push(i);
  }
  this.setData({
  dataList: arr,
  count: ++this.data.count
  });
 } else {
  wx.showToast({
  title: &#39;没有更多数据了!&#39;,
  image: &#39;../../src/images/noData.png&#39;,
  })
 }
 }
})

위 내용은 모두를 위해 제가 정리한 내용입니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다.

관련 기사:

vue가 이미지 src의 동적 로딩을 구현하는 방법에 대해

Javascript에서 가장 긴 공통 하위 시퀀스를 구현하는 방법

Node.js에서 파일 업로드 진행 상황을 얻는 방법은 무엇입니까?

위 내용은 WeChat 애플릿에서 목록의 풀다운 새로 고침 및 풀업 로딩 효과를 얻는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.