溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

小程序怎么實現(xiàn)上拉刷新下拉加載

發(fā)布時間:2022-03-08 09:54:32 來源:億速云 閱讀:238 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹“小程序怎么實現(xiàn)上拉刷新下拉加載”,在日常操作中,相信很多人在小程序怎么實現(xiàn)上拉刷新下拉加載問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”小程序怎么實現(xiàn)上拉刷新下拉加載”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

  小程序怎么實現(xiàn)上拉刷新下拉加載

  上拉刷新,下拉加載,分別點擊tab都還能夠請求服務(wù)器。我想的最好的方法是把日期和月份這2個抽離出來做成一個方法,然后上拉刷新,下拉加載,點擊tab分別調(diào)用日期和月份方法即可。我嘗試百度/google,見到最多的鏈式寫法,以獲取用戶數(shù)據(jù)舉例:

  //這里的操作都是舉例說明。

  wxLogin()

  .then(=>res{

  console.log(res.code)

  return wxRequest.getUserOpenId(url, params)//請求獲取用戶ID

  })

  .then(=>res{

  console.log(res.openId)

  return wxRequest.getUserPhone());//請求獲取用戶手機

  })

  .catch()

  在index.js頁面 ; getUserOpenId()和getUserPhone()都是封裝在另外一個js里面的?;蛘呤侵苯觛etUserMessage().then(res=>).catch();這樣直接獲取用戶數(shù)據(jù)了。

  wxRequest.getUserMessage()

  .then(=>res{

  console.log(res.code);

  })

  .catch()

  當然我這樣舉例還是不能說明存在什么問題,那么如果我要像上面圖那樣獲取日期數(shù)據(jù),月份數(shù)據(jù)怎么辦呢?難道按照第一個那樣寫,上拉加載那里寫一堆,下拉刷新那里一堆,切換tab也寫一堆重復的代碼?還是說我管你是上拉刷新,還是下拉加載好,我直接通過一個接口在一起獲取數(shù)據(jù)?所以我通過百度/google到他們寫的還不夠完善(不是寫的不好哈)

  我的寫法:

  //我只是抽取我部分代碼來展示

  Page({

  data:{

  },

  onLoad: function () {//生命周期

  this.readUserMesage();

  },

  readUserMesage(): function () {//獲取用戶信息,并獲取按日期的數(shù)據(jù)

  this.showLoading();

  let parameters = 'user?ptId=aaaaaaaaaaaaaa';

  api.getRequest({

  parameters: parameters,

  }).then(res => {

  return this.readDayData(); //獲取日期信息

  }).catch(error => {

  this.hideLoading();

  });

  },

  readMonthData() {//把月份單獨抽取出來

  var url = 'dailypay?xxxxx=aaaa&yyy=bbbbbb';

  var parameters = { parameters: url }

  return api.getRequest(parameters)//我這里是封裝請求服務(wù)器的,注意我加了return

  .then(res => {

  //這里就可以獲取到返回的res的集合數(shù)據(jù)

  }).catch(error => {

  console.log(JSON.stringify(error));

  this.hideLoading();

  });

  },

  readDayData() {//把日期單獨抽取出來

  var url = 'dailypay?xxxxx=aaaa&yyy=bbbbbb';

  var parameters = { parameters: url }

  return api.getRequest(parameters)//我這里是封裝請求服務(wù)器的,注意我加了return

  .then(res => {

  //這里就可以獲取到返回的res的集合數(shù)據(jù)

  }).catch(error => {

  this.hideLoading();

  });

  },

  onPullDownRefresh() {//下拉刷新

  if (this.data.currentIndex == 0) {//如果當前是在日期

  this.readDayData();

  } else {//如果當前是在月份

  this.readMonthData();

  }

  },

  onReachBottom() {//上拉加載

  if (this.data.currentIndex == 0) {

  this.readDayData();

  } else {

  this.readMonthData();

  }

  },

  )}

到此,關(guān)于“小程序怎么實現(xiàn)上拉刷新下拉加載”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(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)容。

AI