Maison interface Web Voir.js Fonctions de méthode dans Vue3 : Maîtriser la méthode de communication entre les composants Vue3

Fonctions de méthode dans Vue3 : Maîtriser la méthode de communication entre les composants Vue3

Jun 18, 2023 pm 02:13 PM
vue 组件通信 方法函数

Vue3 est actuellement l'un des frameworks front-end les plus populaires. Il est très apprécié pour ses fonctionnalités puissantes et son API simple et facile à utiliser. Vue3 offre de nombreuses façons d'organiser et d'interagir avec divers composants, notamment la communication inter-composants, la gestion des états, les composants dynamiques, etc. Dans Vue3, nous pouvons utiliser certaines fonctions de méthode pour implémenter la communication entre les composants.

  1. props

props est une fonctionnalité importante de Vue3. C'est un moyen de définir les propriétés des composants et de transférer des données. Si vous devez transmettre des données d'un composant à ses composants enfants, vous pouvez utiliser des accessoires. Vous pouvez spécifier un tableau des propriétés que vous souhaitez accepter dans l'option props du composant enfant. Lorsque vous transmettez des propriétés à partir d'un composant parent, ces propriétés sont automatiquement transmises et disponibles dans le composant enfant. Voici un exemple simple :

<template>
  <div>
    <Child :message="message" />
  </div>
</template>
<script>
import Child from './Child.vue'
export default {
  components: { Child },
  data() {
    return {
      message: 'Hello World!'
    }
  }
}
</script>
Copier après la connexion

Dans le composant Child, nous pouvons recevoir des données via des accessoires :

<template>
  <div>
    <p>{{ message }}</p>
  </div>
</template>
<script>
export default {
  props: {
    message: {
      type: String,
      required: true
    }
  }
}
</script>
Copier après la connexion
Copier après la connexion

Notez que chaque attribut doit être spécifié dans le type d'option props afin que vous puissiez vous assurer que le type de données transmis au composant enfant est correct.

  1. emit

emit est une autre méthode de communication inter-composants couramment utilisée dans Vue3. Lorsque vous devez déclencher un événement dans un composant enfant, vous pouvez utiliser la méthode submit. Dans le composant parent, vous pouvez écouter cet événement et effectuer certaines opérations. Voici un exemple simple :

<template>
  <div>
    <Child @alert="showAlert" />
  </div>
</template>
<script>
import Child from './Child.vue'
export default {
  components: { Child },
  methods: {
    showAlert(msg) {
      alert(msg)
    }
  }
}
</script>
Copier après la connexion

Dans le composant Enfant, nous pouvons utiliser $emit pour déclencher un événement :

<template>
  <div>
    <button @click="onClick">Click Me</button>
  </div>
</template>
<script>
export default {
  methods: {
    onClick() {
      this.$emit('alert', 'Hello World!')
    }
  }
}
</script>
Copier après la connexion

Lorsque l'utilisateur clique sur le bouton, le composant enfant déclenchera un événement d'alerte et délivrera un message au composant parent.

  1. provide/inject

provide/inject est une autre méthode de communication inter-composants fournie par Vue3. Il est légèrement différent des accessoires et des émissions dans la mesure où il vous permet de fournir certaines données au composant enfant. Les composants enfants peuvent recevoir ces données via l'option d'injection. Voici un exemple simple :

<template>
  <div>
    <Child />
  </div>
</template>
<script>
import Child from './Child.vue'
export default {
  provide: {
    message: 'Hello World!'
  },
  components: { Child }
}
</script>
Copier après la connexion

Dans le composant Child, nous pouvons utiliser l'option inject pour recevoir ces données :

<template>
  <div>
    <p>{{ message }}</p>
  </div>
</template>
<script>
export default {
  inject: ['message']
}
</script>
Copier après la connexion

Notez que vous spécifiez ce qui doit être reçu dans l'option inject Le nom des données afin qu'elles puissent être utilisées directement dans les composants enfants.

  1. $parent / $children

$parent et $children sont deux autres outils de communication entre les composants fournis par Vue3. $parent est utilisé à partir d'un composant enfant pour accéder aux propriétés ou aux méthodes de son composant parent, tandis que $children est utilisé à partir d'un composant parent pour accéder aux propriétés ou aux méthodes de ses composants enfants. Puisque ces deux options sont fournies dans Vue3, elles pourraient être abandonnées dans les futures versions de Vue3. $attrs et $listeners sont deux options étonnantes fournies par Vue3. L'option $attrs fournit au composant tous les attributs qui lui sont transmis, et ils peuvent être utilisés avec l'option props du composant enfant, comme ceci :

<template>
  <div>
    <Child v-bind="$attrs" />
  </div>
</template>
<script>
import Child from './Child.vue'
export default {
  components: { Child },
  data() {
    return {
      message: 'Hello World!'
    }
  },
  mounted() {
    console.log(this.$attrs) // { message: "Hello World!" }
  }
}
</script>
Copier après la connexion
    Dans le composant Enfant :
  1. <template>
      <div>
        <p>{{ message }}</p>
      </div>
    </template>
    <script>
    export default {
      props: {
        message: {
          type: String,
          required: true
        }
      }
    }
    </script>
    Copier après la connexion
    Copier après la connexion
    # 🎜🎜#Dans l'exemple ci-dessus, le sous-composant peut utiliser l'option $attrs pour recevoir et définir les options d'accessoires correspondantes.
L'option $listeners fournit au composant tous les écouteurs d'événements dans le composant parent. Cela vous permettra d'utiliser ces écouteurs d'événements dans les composants enfants. Comme indiqué ci-dessous :

<template>
  <div>
    <button v-on="$listeners">Click Me</button>
  </div>
</template>
<script>
export default {
  mounted() {
    console.log(this.$listeners) // { 'click': [f1] }
  }
}
</script>
Copier après la connexion
Lorsque l'utilisateur clique sur le bouton, l'écouteur d'événement dans le composant parent sera déclenché.

Résumé

Cet article répertorie les méthodes de communication inter-composants couramment utilisées dans Vue3. Ces méthodes incluent : accessoires, émettre, fournir/injecter, $parent/$enfants et $attrs/$listeners. Ces méthodes peuvent vous aider à mieux organiser et interagir avec divers composants, à améliorer l'efficacité de votre développement et à améliorer l'expérience utilisateur. En pratique, vous devrez peut-être utiliser plusieurs méthodes simultanément pour atteindre vos objectifs commerciaux. Assurez-vous donc de connaître les options et de savoir quand et où elles s'appliquent.

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 尊渡假赌尊渡假赌尊渡假赌
Où trouver la courte de la grue à atomide atomique
1 Il y a quelques semaines By DDD

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.

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 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 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.

Que signifie la valeur de passage du composant Vue? Que signifie la valeur de passage du composant Vue? Apr 07, 2025 pm 11:51 PM

Les valeurs de passage des composants Vue sont un mécanisme pour passer des données et des informations entre les composants. Il peut être mis en œuvre via des propriétés (accessoires) ou des événements: accessoires: déclarer les données à recevoir dans le composant et passer les données dans le composant parent. Événements: Utilisez la méthode $ EMIT pour déclencher un événement et écoutez-le dans le composant parent à l'aide de la directive V-on.

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.

Comment utiliser la pagination Vue Comment utiliser la pagination Vue Apr 08, 2025 am 06:45 AM

La pagination est une technologie qui divise de grands ensembles de données en petites pages pour améliorer les performances et l'expérience utilisateur. Dans Vue, vous pouvez utiliser la méthode intégrée suivante pour la pagination: Calculez le nombre total de pages: TotalPages () Numéro de page de traversée: Directive V-FOR pour définir la page actuelle: CurrentPage Obtenez les données de la page actuelle: CurrentPagedata ()

See all articles