Maison interface Web Voir.js La différence entre Vue3 et Vue2 : des hooks de cycle de vie plus riches

La différence entre Vue3 et Vue2 : des hooks de cycle de vie plus riches

Jul 08, 2023 pm 05:19 PM
vue 区别 生命周期钩子

La différence entre Vue3 et Vue2 : des hooks de cycle de vie plus riches

Vue est un framework JavaScript populaire pour créer des applications Web interactives. Vue2 est la version stable de Vue.js, tandis que Vue3 est la dernière version de Vue.js. Vue3 apporte de nombreuses améliorations, dont des hooks de cycle de vie plus riches. Cet article présentera la différence entre les hooks de cycle de vie Vue3 et Vue2 et les démontrera à travers des exemples de code.

Hooks de cycle de vie Vue2
Dans Vue2, nous avons huit hooks de cycle de vie qui peuvent être utilisés :

  1. beforeCreate : appelé avant la création de l'instance.
  2. created : appelé après la création de l'instance, mais avant son montage.
  3. beforeMount : appelé avant le montage du DOM.
  4. Mounted : Appelé après le montage du DOM.
  5. beforeUpdate : appelé avant la mise à jour du composant.
  6. updated : appelé après la mise à jour du composant.
  7. beforeDestroy : appelé avant que l'instance ne soit détruite.
  8. destroyed : appelé après la destruction de l'instance.

Ces hooks peuvent nous aider à effectuer les opérations correspondantes à différentes étapes, comme effectuer certains paramètres initiaux après la création de l'instance ou effectuer certaines opérations de nettoyage après le montage du DOM et avant la destruction.

Hooks de cycle de vie Vue3
Vue3 introduit de nouveaux hooks de cycle de vie, un total de dix :

  1. beforeCreate : identique à Vue2, appelé avant la création de l'instance.
  2. created : Identique à Vue2, appelé après la création de l'instance, mais avant le montage.
  3. beforeMount : Identique à Vue2, appelé avant le montage du DOM.
  4. Mounted : Identique à Vue2, appelé après le montage du DOM.
  5. beforeUpdate : Identique à Vue2, appelé avant la mise à jour du composant.
  6. mis à jour : identique à Vue2, appelé après la mise à jour du composant.
  7. beforeUnmount : appelé avant le démontage du composant.
  8. unmounted : appelé après le démontage du composant.
  9. beforeDeactivate : appelé avant que le composant ne s'éteigne.
  10. deactivated : appelé après la désactivation du composant.

Les nouveaux hooks de cycle de vie nous permettent de mieux contrôler les différentes étapes des composants.

Exemple de code
Montrons la différence entre les hooks de cycle de vie de Vue3 et Vue2 avec un exemple de code simple :

Exemple Vue2 :

Vue.component('my-component', {
  beforeCreate: function () {
    console.log('beforeCreate hook in Vue2');
  },
  created: function () {
    console.log('created hook in Vue2');
  },
  beforeMount: function () {
    console.log('beforeMount hook in Vue2');
  },
  mounted: function () {
    console.log('mounted hook in Vue2');
  },
  beforeUpdate: function () {
    console.log('beforeUpdate hook in Vue2');
  },
  updated: function () {
    console.log('updated hook in Vue2');
  },
  beforeDestroy: function () {
    console.log('beforeDestroy hook in Vue2');
  },
  destroyed: function () {
    console.log('destroyed hook in Vue2');
  },
  template: '<div>My Component</div>'
});

new Vue({
  el: '#app'
});
Copier après la connexion

Exemple Vue3 :

const app = Vue.createApp({
  beforeCreate() {
    console.log('beforeCreate hook in Vue3');
  },
  created() {
    console.log('created hook in Vue3');
  },
  beforeMount() {
    console.log('beforeMount hook in Vue3');
  },
  mounted() {
    console.log('mounted hook in Vue3');
  },
  beforeUpdate() {
    console.log('beforeUpdate hook in Vue3');
  },
  updated() {
    console.log('updated hook in Vue3');
  },
  beforeUnmount() {
    console.log('beforeUnmount hook in Vue3');
  },
  unmounted() {
    console.log('unmounted hook in Vue3');
  },
  beforeDeactivate() {
    console.log('beforeDeactivate hook in Vue3');
  },
  deactivated() {
    console.log('deactivated hook in Vue3');
  },
  template: '<div>My Component</div>'
});

app.mount('#app');
Copier après la connexion

Veuillez noter que la méthode Vue.createApp()方法创建应用程序实例,并使用app.mount() est utilisée dans Vue3 pour transférer l'application Montée sur l'élément DOM.

En exécutant l'exemple de code ci-dessus, vous verrez la console imprimer les journaux des différents hooks de cycle de vie pour montrer la différence entre Vue3 et Vue2 en termes de hooks de cycle de vie.

Conclusion
Vue3 introduit des hooks de cycle de vie plus riches par rapport à Vue2, nous permettant de mieux contrôler le comportement des composants à différentes étapes. Ces améliorations du hook de cycle de vie rendent le développement et la maintenance des applications Vue plus pratiques et plus flexibles. J'espère que les exemples de code et les explications de cet article vous aideront à comprendre les hooks du cycle de vie de Vue3 et Vue2.

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

Article chaud

Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Article chaud

Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Tags d'article chaud

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)

Deepseek Quelle est la différence entre la version R1 et V3 Deepseek Quelle est la différence entre la version R1 et V3 Feb 19, 2025 pm 03:24 PM

Deepseek Quelle est la différence entre la version R1 et V3

Bitcoin a-t-il des actions? Bitcoin a-t-il des actions? Mar 03, 2025 pm 06:42 PM

Bitcoin a-t-il des actions?

Résumé des FAQ pour une utilisation profonde Résumé des FAQ pour une utilisation profonde Feb 19, 2025 pm 03:45 PM

Résumé des FAQ pour une utilisation profonde

Quelle est la différence entre le trading pré-commercial et après-marché? Explication détaillée des différences entre le pré-commercialisation et le trading après le marché Quelle est la différence entre le trading pré-commercial et après-marché? Explication détaillée des différences entre le pré-commercialisation et le trading après le marché Mar 03, 2025 pm 11:54 PM

Quelle est la différence entre le trading pré-commercial et après-marché? Explication détaillée des différences entre le pré-commercialisation et le trading après le marché

Pourquoi Bittensor est-il le 'Bitcoin' sur la piste AI? Pourquoi Bittensor est-il le 'Bitcoin' sur la piste AI? Mar 04, 2025 pm 04:06 PM

Pourquoi Bittensor est-il le 'Bitcoin' sur la piste AI?

Y a-t-il une différence entre le bitcoin sud-coréen et le bitcoin domestique? Y a-t-il une différence entre le bitcoin sud-coréen et le bitcoin domestique? Mar 05, 2025 pm 06:51 PM

Y a-t-il une différence entre le bitcoin sud-coréen et le bitcoin domestique?

Pepe a acheté et vendu de manière importante, Mutm est-il un investissement plus intelligent en 2025? Pepe a acheté et vendu de manière importante, Mutm est-il un investissement plus intelligent en 2025? Mar 03, 2025 pm 07:09 PM

Pepe a acheté et vendu de manière importante, Mutm est-il un investissement plus intelligent en 2025?

Proxy vertical: scénarios d'application et interprétation du potentiel perturbateur de la procuration native du cryptage Proxy vertical: scénarios d'application et interprétation du potentiel perturbateur de la procuration native du cryptage Mar 04, 2025 am 10:21 AM

Proxy vertical: scénarios d'application et interprétation du potentiel perturbateur de la procuration native du cryptage

See all articles