Maison  >  Article  >  interface Web  >  Comment définir le cache dans Uniapp pour résoudre l'écran blanc

Comment définir le cache dans Uniapp pour résoudre l'écran blanc

PHPz
PHPzoriginal
2023-04-18 10:18:142024parcourir

Avec le développement de la technologie Internet mobile, l'expérience utilisateur des applications mobiles attire de plus en plus d'attention. Parmi eux, la vitesse de démarrage des applications, en tant que l'un des facteurs importants de l'expérience utilisateur, a retenu l'attention de plus en plus de développeurs. Au cours du processus de développement, nous devons souvent utiliser la mise en cache pour accélérer le démarrage des applications, réduire le temps passé sur écran blanc et améliorer l'expérience utilisateur. Cet article explique comment configurer le cache dans Uniapp pour résoudre le problème de l'écran blanc.

1. Pourquoi le problème d'écran blanc se produit-il ?

Lors du processus de démarrage d'une application, il est souvent nécessaire de charger de nombreuses ressources, notamment js, css, images, etc., et ces ressources doivent être obtenues auprès du serveur. S'il y a beaucoup de ressources ou si le serveur répond lentement, la page frontale affichera un écran blanc ou se figera. Comme le montre la figure ci-dessous :

Comment définir le cache dans Uniapp pour résoudre lécran blanc

En raison du retard, un long écran blanc affectera sérieusement l'expérience utilisateur et entraînera même la perte de l'utilisateur.

2. Comment définir le cache

Dans uniapp, nous pouvons utiliser la méthode uni.setStorageSync pour définir le cache.

  1. Configuration dans main.js

Dans main.js, nous pouvons ajouter le code suivant pour définir le cache de la page de démarrage :

// main.js
const showSplashScreen = () => {
  const splashScreenCacheKey = 'splashScreenCacheKey';
  const cacheTimeLimit = 10 * 60 * 1000;  // 单位为毫秒,这里设置10分钟

  const cacheData = uni.getStorageSync(splashScreenCacheKey);
  const now = Date.now();

  if (cacheData && cacheData.timestamp && now  {
        const data = res.data;
        uni.hideLoading();
        uni.redirectTo({ url: data.path });
        uni.setStorageSync(splashScreenCacheKey, {path: data.path, timestamp: now})
      }
    })
  }
}

App({
  async onLaunch() {
    showSplashScreen();
  },
  //...
})

La méthode dans le code ci-dessus consiste principalement à déterminer s'il y a un cache lorsque démarrer l'application. La page de démarrage en cache et déterminer si le cache a expiré. S'il existe un cache et qu'il n'a pas expiré, la page de démarrage en cache sera affichée directement, sinon la page de démarrage sera à nouveau obtenue.

Après avoir obtenu la dernière page de démarrage, les données doivent être mises en cache localement pour la prochaine utilisation. Ici, nous pouvons stocker le chemin de la page de démarrage demandé et l'horodatage actuel dans le cache. Cela garantit que lors du prochain démarrage de l'application, si le cache n'a pas expiré, les données mises en cache pourront être utilisées directement sans avoir à les récupérer à nouveau, améliorant ainsi l'expérience utilisateur.

  1. Mise en cache d'autres ressources

Dans uniapp, nous pouvons également mettre en cache d'autres ressources, comme les css, js, etc. de la page. Il convient de noter que certaines ressources peuvent être mises à jour à tout moment et doivent être redemandées à chaque chargement. Par exemple, certaines données sur les utilisateurs nécessitent un rendu dynamique de la page basé sur les informations en temps réel de l'utilisateur. Nous ne pouvons pas utiliser la mise en cache pour stocker ces données.

3. Notes

  1. L'heure effective du cache doit être définie en fonction de la situation réelle. Si la durée du cache est trop longue, les données peuvent ne pas être suffisamment en temps réel. Si la durée est trop courte, les données mises en cache peuvent ne pas être disponibles et doivent être demandées à nouveau.
  2. Il convient de noter que l'utilisation du mécanisme de mise en cache peut entraîner que les données ne soient pas suffisamment en temps réel, elles doivent donc être utilisées en fonction de la situation réelle pour éviter les erreurs causées par le fait que les données ne sont pas suffisamment en temps réel.
  3. Lors de la configuration du cache, vous devez choisir la méthode de cache appropriée en fonction de la situation réelle, telle que localStorage, sessionStorage, cookie, etc.

4. Résumé

Dans le processus de développement d'applications Uniapp, la configuration du cache est l'une des méthodes efficaces pour améliorer la vitesse de démarrage des applications et l'expérience utilisateur. Cet article explique principalement comment utiliser la mise en cache dans Uniapp pour accélérer le démarrage des applications, réduire le temps passé sur écran blanc et améliorer l'expérience utilisateur. Dans le même temps, il convient de noter que lors de l'utilisation du mécanisme de mise en cache, il doit être utilisé et configuré de manière appropriée en fonction de la situation réelle pour éviter les erreurs causées par des données en temps réel insuffisantes.

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