Maison interface Web Voir.js Comment utiliser keep-alive pour optimiser l'effet de changement d'itinéraire dans le projet vue

Comment utiliser keep-alive pour optimiser l'effet de changement d'itinéraire dans le projet vue

Jul 22, 2023 pm 12:29 PM
vue keep-alive 路由切换

Comment utiliser keep-alive pour optimiser l'effet de changement d'itinéraire dans les projets vue

Dans les projets vue, le changement d'itinéraire est une opération courante. Cependant, lorsque nous changeons fréquemment d'itinéraire, nous constatons que les composants et les données sont rechargés à chaque fois que nous changeons, ce qui entraîne un chargement lent des pages et une mauvaise expérience utilisateur. Afin de résoudre ce problème, nous pouvons utiliser le composant keep-alive de vue pour optimiser l'effet de commutation de routage.

keep-alive est un composant abstrait fourni par Vue, qui peut être encapsulé en dehors du composant qui doit être mis en cache pour mettre en cache l'état du composant afin d'éviter un rendu répété du composant. Lorsque vous changez d'itinéraire, vous pouvez contrôler dynamiquement s'il faut activer la mise en cache en définissant l'attribut méta de l'itinéraire. Voyons ensuite comment utiliser keep-alive pour optimiser l'effet de changement de routage dans le projet vue.

  1. Tout d'abord, ajoutez un attribut méta dans le fichier de configuration de routage

Dans chaque objet de route dans le fichier de configuration de routage (généralement router.js), ajoutez un attribut méta et définissez sa valeur sur true ou false pour contrôler si la mise en cache est activé. Par exemple :

const routes = [
  {
    path: '/',
    name: 'Home',
    component: Home,
    meta: {
      keepAlive: true
    }
  },
  {
    path: '/about',
    name: 'About',
    component: About,
    meta: {
      keepAlive: false
    }
  }
]
Copier après la connexion
  1. Utilisez le composant keep-alive dans App.vue

En dehors de la balise dans App.vue, ajoutez la balise nécessite le nom du composant de mise en cache. Par exemple :

<template>
  <div id="app">
    <keep-alive :include="keepAliveComponents">
      <router-view></router-view>
    </keep-alive>
  </div>
</template>

<script>
export default {
  computed: {
    keepAliveComponents() {
      // 获取带有meta.keepAlive属性的组件名
      const routes = this.$router.options.routes;
      const keepAliveComponents = routes
        .filter(route => route.meta && route.meta.keepAlive)
        .map(route => route.name);
      return keepAliveComponents;
    }
  }
};
</script>
Copier après la connexion

Dans le code ci-dessus, nous utilisons l'attribut calculé keepAliveComponents pour obtenir le nom du composant avec l'attribut meta.keepAlive et le définissons sur la valeur de l'attribut include.

  1. Utilisez les fonctions hook activées et désactivées dans les composants qui doivent être mis en cache

Dans les composants qui doivent être mis en cache, vous pouvez utiliser les fonctions hook activées et désactivées pour écouter les événements d'activation et de désactivation du composant. Dans l'événement d'activation, des demandes de données correspondantes ou d'autres opérations peuvent être effectuées ; dans l'événement de désactivation, les données peuvent être nettoyées ou un autre traitement peut être effectué. Par exemple :

<template>
  <div>
    <!-- 组件内容 -->
  </div>
</template>

<script>
export default {
  activated() {
    // 组件激活时执行的操作
  },
  deactivated() {
    // 组件停用时执行的操作
  }
};
</script>
Copier après la connexion

En utilisant les fonctions hook activées et désactivées, vous pouvez avoir un meilleur contrôle sur le cycle de vie du composant et le traitement des données.

  1. Test de l'effet

Après avoir terminé les étapes ci-dessus, nous pouvons tester l'effet du maintien en vie. Lors du changement de route, si la propriété meta.keepAlive est vraie, le composant sera mis en cache sinon, il ne sera pas mis en cache ;

Résumé :

En utilisant le composant keep-alive de vue, nous pouvons facilement optimiser l'effet de changement de routage, éviter le chargement répété de composants et de données, et améliorer la vitesse de chargement des pages et l'expérience utilisateur. Dans le développement de projets, keep-alive doit être utilisé de manière flexible en fonction des scénarios réels et combiné avec des fonctions de hook activées et désactivées pour le traitement et l'optimisation des données.

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment référencer le fichier JS avec Vue.js Comment référencer le fichier JS avec Vue.js Apr 07, 2025 pm 11:27 PM

Il existe trois façons de se référer aux fichiers JS dans Vue.js: spécifiez directement le chemin à l'aide du & lt; script & gt; étiqueter;; importation dynamique à l'aide du crochet de cycle de vie monté (); et l'importation via la bibliothèque de gestion de l'État Vuex.

Comment utiliser Watch in Vue Comment utiliser Watch in Vue Apr 07, 2025 pm 11:36 PM

L'option Watch dans Vue.js permet aux développeurs d'écouter des modifications de données spécifiques. Lorsque les données changent, regardez déclenche une fonction de rappel pour effectuer des vues de mise à jour ou d'autres tâches. Ses options de configuration incluent immédiatement, qui spécifie s'il faut exécuter un rappel immédiatement, et profond, ce qui spécifie s'il faut écouter récursivement les modifications des objets ou des tableaux.

Comment utiliser Bootstrap en Vue Comment utiliser Bootstrap en Vue Apr 07, 2025 pm 11:33 PM

L'utilisation de bootstrap dans vue.js est divisée en cinq étapes: installer bootstrap. Importer un bootstrap dans main.js. Utilisez le composant bootstrap directement dans le modèle. Facultatif: style personnalisé. Facultatif: utilisez des plug-ins.

Comment ajouter des fonctions aux boutons pour Vue Comment ajouter des fonctions aux boutons pour Vue Apr 08, 2025 am 08:51 AM

Vous pouvez ajouter une fonction au bouton VUE en liant le bouton dans le modèle HTML à une méthode. Définissez la logique de la fonction de méthode et d'écriture dans l'instance Vue.

Vue réalise l'effet de défilement de chapiteau / texte Vue réalise l'effet de défilement de chapiteau / texte Apr 07, 2025 pm 10:51 PM

Implémentez les effets de défilement marquee / texte dans VUE, en utilisant des animations CSS ou des bibliothèques tierces. Cet article présente comment utiliser l'animation CSS: créer du texte de défilement et envelopper du texte avec & lt; div & gt;. Définissez les animations CSS et défini: caché, largeur et animation. Définissez les images clés, Set Transforment: Translatex () au début et à la fin de l'animation. Ajustez les propriétés d'animation telles que la durée, la vitesse de défilement et la direction.

Que signifie la charge paresseuse? Que signifie la charge paresseuse? Apr 07, 2025 pm 11:54 PM

Dans vue.js, le chargement paresseux permet de charger dynamiquement les composants ou les ressources, en réduisant le temps de chargement des pages initiales et en améliorant les performances. La méthode de mise en œuvre spécifique comprend l'utilisation de & lt; keep-alive & gt; et & lt; composant est & gt; composants. Il convient de noter que le chargement paresseux peut provoquer des problèmes de FOUC (écran d'éclat) et ne doit être utilisé que pour les composants qui nécessitent un chargement paresseux pour éviter les frais généraux de performances inutiles.

Comment revenir à la page précédente par Vue Comment revenir à la page précédente par Vue Apr 07, 2025 pm 11:30 PM

Vue.js dispose de quatre méthodes pour revenir à la page précédente: $ router.go (-1) $ router.back () utilise & lt; router-link to = & quot; / & quot; Composant Window.History.back (), et la sélection de la méthode dépend de la scène.

Comment interroger la version de Vue Comment interroger la version de Vue Apr 07, 2025 pm 11:24 PM

Vous pouvez interroger la version Vue en utilisant Vue Devtools pour afficher l'onglet Vue dans la console du navigateur. Utilisez NPM pour exécuter la commande "NPM List -g Vue". Recherchez l'élément VUE dans l'objet "dépendances" du fichier package.json. Pour les projets Vue CLI, exécutez la commande "Vue --version". Vérifiez les informations de la version dans le & lt; script & gt; Tag dans le fichier html qui fait référence au fichier VUE.

See all articles