Maison  >  Article  >  interface Web  >  Fonction normalizeClass dans Vue3 : méthode de rendu flexible du nom de classe

Fonction normalizeClass dans Vue3 : méthode de rendu flexible du nom de classe

WBOY
WBOYoriginal
2023-06-18 10:33:24825parcourir

Vue est un framework frontal populaire. La fonction normalizeClass a été ajoutée à Vue3. Cette nouvelle fonctionnalité peut rendre les noms de classe de manière plus flexible. Dans cet article, nous examinerons l'utilisation et les avantages de normalizeClass.

Dans Vue3, nous pouvons désormais utiliser la fonction normalizeClass pour restituer les noms de classe. Cette nouvelle fonctionnalité est très utile grâce à cette fonction, nous pouvons restituer plus facilement les noms de classe dans les composants. La fonction normalizeClass peut recevoir les différents paramètres suivants :

  1. String : La fonction normalizeClass peut recevoir une chaîne en paramètre. Cette chaîne représente un nom de classe et la fonction normalizeClass restituera ce nom de classe dans le composant.
  2. Object : La fonction normalizeClass peut recevoir un objet en paramètre. Cet objet contient plusieurs paires clé-valeur, chaque paire clé-valeur représente un nom de classe. Si la valeur correspondant à la clé est vraie, le nom de la classe sera rendu dans le composant ; sinon, le nom de la classe ne sera pas rendu.
  3. Array : La fonction normalizeClass peut recevoir un tableau en paramètre. Ce tableau peut contenir plusieurs chaînes ou objets. Ces chaînes ou objets seront restitués en composants un par un selon les règles ci-dessus.

Voici un exemple montrant comment restituer un nom de classe à l'aide de la fonction normalizeClass :

<template>
  <div :class="normalizeClass([
    'text-gray-700',
    { 'bg-red-500': isRed, 'bg-blue-500': isBlue }
  ])">
    Hello World
  </div>
</template>

<script>
export default {
  data() {
    return {
      isRed: true,
      isBlue: false,
    };
  },
  methods: {
    normalizeClass(classList) {
      return classList.filter(Boolean).join(' ');
    },
  },
};
</script>

<style>
.text-gray-700 {
  color: gray;
}
.bg-red-500 {
  background-color: red;
}
.bg-blue-500 {
  background-color: blue;
}
</style>

Dans l'exemple ci-dessus, nous avons défini une méthode normalizeClass pour gérer le nom de classe rendu. Cette méthode reçoit un paramètre classList, qui est un tableau. La méthode normalizeClass utilise d'abord la méthode filter pour filtrer les fausses valeurs​​dans la classList (y compris les chaînes vides et false), puis utilise la méthode join pour regrouper tous les noms de classe en une chaîne. Enfin, cette chaîne est renvoyée, qui sera restituée dans le composant.

Dans cet exemple, la fonction normalizeClass affichera trois noms de classe selon les conditions : text-gray-700, bg-red-500 et bg-blue-500. Parmi eux, text-gray-700 est un nom de classe courant, tandis que bg-red-500 et bg-blue-500 sont des noms de classe rendus en fonction de conditions. isRed est vrai, donc bg-red-500 sera rendu dans le composant ; isBlue est faux, donc bg-blue-500 ne sera pas rendu dans le composant.

L'un des avantages de la fonction normalizeClass est qu'elle nous permet de restituer les noms de classe de manière plus flexible. À l'aide de la fonction normalizeClass, nous pouvons restituer dynamiquement les noms de classe en fonction de conditions, afin de pouvoir gérer et traiter plus facilement divers noms de classe. Dans le même temps, nous pouvons également réutiliser le code plus facilement car la fonction normalizeClass peut être partagée par tous les composants.

Pour résumer, la fonction normalizeClass est une nouvelle fonctionnalité très utile fournie par Vue3. Grâce à cette fonction, nous pouvons restituer le nom de la classe dans le composant de manière plus flexible. Si vous utilisez Vue3, nous vous recommandons fortement d'utiliser la fonction normalizeClass dans votre composant pour gérer et gérer les noms de classe.

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