Maison  >  Article  >  interface Web  >  Comment utiliser keep-alive pour le contrôle du cache de pages dans les projets Vue

Comment utiliser keep-alive pour le contrôle du cache de pages dans les projets Vue

WBOY
WBOYoriginal
2023-07-22 15:03:281210parcourir

Comment utiliser keep-alive pour le contrôle du cache de pages dans le projet Vue

Dans le projet Vue, keep-alive est un composant très utile qui peut nous aider à implémenter le contrôle du cache de pages. En enveloppant un composant dans une balise keep-alive, vous pouvez permettre au composant de conserver son état lors du changement, améliorant ainsi la vitesse de chargement de la page et l'expérience utilisateur. Dans cet article, nous expliquerons comment utiliser keep-alive dans les projets Vue et donnerons quelques exemples de code pour illustrer son utilisation et ses effets.

  1. Qu'est-ce que le maintien en vie ?
    keep-alive est un composant intégré de Vue.js pour la mise en cache des composants. Lorsqu'un composant est enveloppé dans une balise keep-alive, il sera mis en cache et ne sera pas détruit. Lors d'un nouvel accès au composant, il sera extrait directement du cache sans être recréé. Cela peut considérablement améliorer la vitesse de chargement des pages et l’expérience utilisateur.
  2. Comment utiliser keep-alive ?
    Pour utiliser keep-alive dans un projet Vue, enveloppez simplement les composants qui doivent être mis en cache dans la balise keep-alive. L'exemple de code est le suivant :
<template>
  <div>
    <keep-alive>
      <router-view></router-view>
    </keep-alive>
  </div>
</template>

<script>
export default {
  name: "App",
};
</script>

Dans le code ci-dessus, nous enveloppons 975b587bf85a482ea10b0a28848e78a4dd6e4ababe59793a4ac75fb9e5c5550e dans 7c9485ff8c3cba5ae9343ed63c2dc3f788a9aedb2705f67ac4700bfffa81afcc. De cette façon, chaque fois que la route est changée, les composants rendus par 975b587bf85a482ea10b0a28848e78a4 seront mis en cache. 975b587bf85a482ea10b0a28848e78a4dd6e4ababe59793a4ac75fb9e5c5550e包裹在7c9485ff8c3cba5ae9343ed63c2dc3f776c72b6c0750de65f93a5445ee8cabd8中。这样,每次路由切换时,975b587bf85a482ea10b0a28848e78a4渲染的组件都会被缓存下来。

  1. keep-alive的生命周期钩子函数
    keep-alive有两个生命周期钩子函数,分别是activateddeactivated。可以在这两个钩子函数中定义一些自定义逻辑,来提供更好的缓存控制。

示例代码如下:

<template>
  <div>
    <keep-alive :include="['Home']" @activated="handleActivated" @deactivated="handleDeactivated">
      <router-view></router-view>
    </keep-alive>
  </div>
</template>

<script>
export default {
  name: "App",
  methods: {
    handleActivated() {
      // 在keep-alive激活时执行的逻辑
      console.log("Activated");
    },
    handleDeactivated() {
      // 在keep-alive停用时执行的逻辑
      console.log("Deactivated");
    },
  },
};
</script>

在上述代码中,我们通过include属性指定了需要缓存的组件,通过activateddeactivated属性分别绑定了handleActivatedhandleDeactivated方法。这样,当这些组件被激活和停用时,相应的方法将被调用。

  1. 使用exlude属性排除不需要缓存的组件
    如果我们希望排除一些组件不被缓存,可以使用exclude属性。示例代码如下:
<template>
  <div>
    <keep-alive :exclude="['Login']">
      <router-view></router-view>
    </keep-alive>
  </div>
</template>

在上述代码中,我们使用exclude

    Fonction de hook de cycle de vie de keep-alive

    keep-alive a deux fonctions de hook de cycle de vie, à savoir activé et désactivé. Une logique personnalisée peut être définie dans ces deux fonctions de hook pour fournir un meilleur contrôle du cache.

    🎜L'exemple de code est le suivant : 🎜rrreee🎜Dans le code ci-dessus, nous spécifions les composants qui doivent être mis en cache via l'attribut include, et via activated et deactivatedLes propriétés sont liées respectivement aux méthodes handleActivated et handleDeactivated. De cette façon, lorsque ces composants seront activés et désactivés, les méthodes correspondantes seront appelées. 🎜
      🎜Utilisez l'attribut d'exclusion pour exclure les composants qui n'ont pas besoin d'être mis en cache🎜Si nous voulons exclure certains composants de la mise en cache, nous pouvons utiliser l'attribut exclude. L'exemple de code est le suivant : 🎜🎜rrreee🎜Dans le code ci-dessus, nous utilisons l'attribut exclude pour spécifier les composants qui n'ont pas besoin d'être mis en cache, afin que ces composants ne soient pas mis en cache. 🎜🎜Résumé : 🎜Dans le projet Vue, l'utilisation de keep-alive peut facilement réaliser le contrôle du cache des pages. En encapsulant les composants qui doivent être mis en cache dans keep-alive, la vitesse de chargement des pages et l'expérience utilisateur peuvent être améliorées. Grâce aux fonctions et propriétés des hooks de cycle de vie, nous pouvons également avoir un contrôle de cache plus précis. J'espère que cet article pourra vous aider à comprendre et à appliquer le composant keep-alive et à jouer un rôle plus important dans votre projet. 🎜

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