Maison  >  Article  >  interface Web  >  Changements dans Vue3 par rapport à Vue2 : instructions intégrées plus riches

Changements dans Vue3 par rapport à Vue2 : instructions intégrées plus riches

PHPz
PHPzoriginal
2023-07-07 16:01:471189parcourir

Changements dans Vue3 par rapport à Vue2 : instructions intégrées plus riches

Au fil du temps, Vue.js, en tant que framework JavaScript populaire, continue d'être mis à niveau et amélioré. Vue3 est la dernière version de Vue.js, qui apporte de nombreux changements et mises à niveau importants par rapport à Vue2. L'un des changements les plus significatifs est la richesse des commandes intégrées. Dans cet article, nous explorerons certaines modifications apportées aux directives intégrées dans Vue3 par rapport à Vue2, et fournirons quelques exemples de code pour illustrer ces modifications.

Dans Vue2, les instructions intégrées que nous connaissons incluent principalement : v-if, v-for, v-bind, v-on, etc. Ces instructions nous fournissent des fonctions riches pour gérer les tâches de développement front-end courantes telles que la liaison de données, le rendu conditionnel et le rendu en boucle. Cependant, dans Vue3, ces instructions intégrées originales ont été améliorées et complétées par de nouvelles instructions intégrées.

Tout d’abord, commençons par un exemple simple pour comprendre les directives intégrées améliorées dans Vue3. Supposons que nous ayons une simple application Vue contenant un bouton qui affiche une info-bulle lorsque vous cliquez sur le bouton. Dans Vue2, nous utiliserons la directive v-if pour implémenter cette fonction. L'exemple de code est le suivant :

<template>
  <div>
    <button v-if="showDialog" @click="showDialog = false">点击显示提示框</button>
    <div v-else>
      <div class="dialog">
        <p>这是一个提示框!</p>
        <button @click="showDialog = true">关闭</button>
      </div>
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return {
      showDialog: false
    };
  }
};
</script>

Dans le code ci-dessus, nous utilisons l'instruction v-if pour contrôler l'affichage et le masquage des boutons et des boîtes de dialogue en fonction de la valeur de showDialog. Lorsque showDialog est vrai, le bouton sera masqué et la boîte d'invite sera affichée ; lorsque showDialog est faux, le bouton sera affiché et la boîte d'invite sera masquée. Il s'agit d'une utilisation courante du rendu conditionnel dans Vue2.

Cependant, dans Vue3, nous pouvons utiliser la nouvelle instruction intégrée v-show pour obtenir la même fonctionnalité. La directive v-show a la même fonction que la directive v-if. Elles contrôlent toutes deux l'affichage et le masquage des éléments en fonction de la valeur de l'expression. La différence est que v-show n'ajoute ni ne supprime d'éléments dans le DOM, mais contrôle l'affichage et le masquage en modifiant les propriétés CSS des éléments. Ce qui suit est un exemple de code de la même fonction réécrite en utilisant v-show :

<template>
  <div>
    <button v-show="showDialog" @click="showDialog = false">点击显示提示框</button>
    <div v-show="!showDialog">
      <div class="dialog">
        <p>这是一个提示框!</p>
        <button @click="showDialog = true">关闭</button>
      </div>
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return {
      showDialog: false
    };
  }
};
</script>

Grâce à l'exemple de code ci-dessus, nous pouvons voir que nous pouvons utiliser la directive v-show pour remplacer la directive v-if pour obtenir la même fonction. Dans le développement réel, selon des exigences et des scénarios spécifiques, nous pouvons choisir d'utiliser v-if ou v-show pour répondre à nos besoins.

En plus de v-show, Vue3 introduit également de nouvelles instructions intégrées, telles que v-model, v-bind, v-on, etc. Ces directives existent également dans Vue2, mais ont été améliorées et enrichies dans Vue3. Voici un exemple simple utilisant la directive v-model :

<template>
  <div>
    <input v-model="message" />
    <p>{{ message }}</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      message: ''
    };
  }
};
</script>

Dans l'exemple de code ci-dessus, nous avons utilisé la directive v-model pour implémenter une liaison de données bidirectionnelle. Lorsque l'utilisateur saisit du texte dans la zone de saisie, l'instruction v-model liera la valeur saisie par l'utilisateur à l'attribut de message dans les données. En même temps, lorsque l'attribut de message dans les données change, le texte dans la zone de saisie sera modifié. changer également en conséquence. La directive v-model rend la mise en œuvre de la liaison de données bidirectionnelle plus concise et intuitive.

En plus des nouvelles instructions, Vue3 a également amélioré et amélioré certaines instructions originales. Par exemple, dans Vue3, la directive v-bind peut lier plusieurs valeurs de propriété en même temps, comme indiqué ci-dessous :

<template>
  <div>
    <a v-bind="{ href: url, target: '_blank' }">点击打开链接</a>
  </div>
</template>

<script>
export default {
  data() {
    return {
      url: 'https://www.example.com'
    };
  }
};
</script>

Dans l'exemple de code ci-dessus, nous avons utilisé un objet pour spécifier plusieurs valeurs de propriété à lier . Passez la directive v-bind avec un objet comme paramètre, et chaque propriété de l'objet sera analysée en une propriété liée.

Pour résumer, Vue3 apporte de nombreux changements et améliorations dans les directives intégrées. En introduisant de nouvelles instructions et en améliorant la fonctionnalité des instructions originales, Vue3 offre plus d'options et un moyen plus flexible de répondre aux besoins du développement front-end. En utilisant de nouvelles instructions et en réécrivant l'exemple de code, nous pouvons avoir une compréhension plus claire des modifications apportées par Vue3 aux instructions intégrées et appliquer ces modifications dans des projets réels pour améliorer l'efficacité du développement et la qualité du code.

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