Maison >interface Web >uni-app >Pourquoi uniapp ne s'actualise-t-il pas lors de l'ouverture pour charger davantage d'Alipay ?

Pourquoi uniapp ne s'actualise-t-il pas lors de l'ouverture pour charger davantage d'Alipay ?

PHPz
PHPzoriginal
2023-04-20 15:01:32700parcourir

Lorsque vous utilisez uniapp pour développer l'applet Alipay, vous pouvez rencontrer un problème : lorsque vous ouvrez pour en charger davantage, l'applet Alipay ne rafraîchit pas automatiquement la page. Cet article explique comment résoudre ce problème.

  1. Présentation de la méthode pageScrollTo fournie avec Alipay

Lorsque uniapp développe l'applet Alipay, vous pouvez utiliser la méthode pageScrollTo fournie avec Alipay pour faire défiler la page jusqu'à la position spécifiée. L'utilisation spécifique est la suivante :

// 在vue文件的methods中定义一个scrollToBottom方法
scrollToBottom() {
  // 获取页面滚动高度
  uni.pageScrollTo({
    scrollTop: 9999,
    duration: 0
  });
},
// 在template中引用
<template>
  <view>
    <!-- 省略其他代码 -->
    <view @scrolltolower="scrollToLower">上拉加载更多</view>
  </view>
</template>
  1. Utilisez une minuterie pour retarder l'exécution

Dans le code ci-dessus, nous appelons la méthode scrollToBottom dans la méthode scrollToLower pour faire défiler la page. Cependant, dans l'applet Alipay, le défilement de la page prend du temps et nous devons faire défiler la page vers le bas avant d'effectuer d'autres opérations de chargement. Par conséquent, nous devons utiliser une minuterie dans la méthode scrollToLower pour retarder le chargement de davantage d'opérations. L'utilisation spécifique est la suivante :

// 在vue文件的methods中定义一个timer变量
data() {
  return {
    timer: null
  }
},
// 在scrollToLower方法中使用定时器
scrollToLower() {
  if (this.timer) {
    clearTimeout(this.timer);
  }
  this.timer = setTimeout(() => {
    this.scrollToBottom();
    // TODO: 执行加载更多的操作
  }, 100);
}

Dans le code ci-dessus, nous définissons une variable de minuterie pour enregistrer l'identifiant de la minuterie. Chaque fois que la méthode scrollToLower est exécutée, la minuterie précédente (le cas échéant) est effacée en premier, puis la méthode setTimeout. est utilisé pour retarder l'exécution de scrollToBottom et charger plus d'opérations.

Ce qui précède est la méthode pour résoudre le problème de l'extraction et du chargement supplémentaire sans actualiser la page dans l'applet Alipay développée par uniapp. J'espère que ça aide.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn