Maison  >  Article  >  interface Web  >  Une brève analyse de la façon dont vue appelle les méthodes des composants

Une brève analyse de la façon dont vue appelle les méthodes des composants

PHPz
PHPzoriginal
2023-04-07 09:28:091883parcourir

Vue est un framework JavaScript populaire qui facilite la création d'une application Web évolutive et maintenable. L'une des caractéristiques importantes est son architecture composée de composants, qui peut utiliser des composants pour encapsuler des blocs de code afin d'améliorer la réutilisabilité et la maintenabilité du code. Dans Vue, les méthodes de composants sont très importantes. Cet article explique comment appeler les méthodes de composants.

Dans Vue, les méthodes de composant peuvent être définies dans le composant. Nous pouvons définir un composant à l'aide de la méthode Vue.extend et définir des méthodes dans l'attribut méthodes de l'objet composant. Par exemple :

var MyComponent = Vue.extend({
  methods: {
    myMethod: function () {
      // 这是一个方法代码块
    }
  }
})

Nous pouvons appeler la méthode du composant en instanciant l'objet composant et en appelant la méthode sur l'instance :

var componentInstance = new MyComponent()
componentInstance.myMethod()

Le code ci-dessus crée d'abord un objet composant MyComponent, puis crée une instance componentInstance de cet objet, et appelle la méthode myMethod qu'il contient.

Nous pouvons également utiliser un composant comme sous-composant d'un autre composant et appeler la méthode du sous-composant via la référence du composant parent. Dans Vue, les composants peuvent communiquer via la transmission de propriétés. Un composant parent peut référencer une instance de composant enfant à l'aide de l'attribut ref du composant enfant et appeler directement ses méthodes. L'exemple de code est le suivant :

<template>
  <div>
    <child-component ref="child"></child-component>
    <button @click="callChildMethod">调用子组件方法</button>
  </div>
</template>

<script>
  import ChildComponent from './ChildComponent.vue';
  
  export default {
    components: {
      'child-component': ChildComponent
    },
    methods: {
      callChildMethod: function () {
        this.$refs.child.childMethod()
      }
    }
  }
</script>

Dans le code ci-dessus, le composant parent définit la référence du composant enfant via ref="child", puis référence le composant enfant via this.$refs.child dans la méthode callChildMethod, et y appelle la méthode childMethod.

Bien sûr, si un composant est utilisé de plusieurs manières, il sera difficile pour le sous-composant d'appeler sa propre méthode. Nous pouvons utiliser le système d'événements intégré de Vue pour exécuter directement les méthodes que les composants enfants doivent appeler dans le composant parent via une écoute d'événements personnalisée. Les événements personnalisés peuvent être déclenchés via la méthode $emit du composant enfant et écoutés via la directive v-on du composant parent. L'exemple de code est le suivant :

<!-- ChildComponent.vue -->
<template>
  <div>
    <!-- 子组件中触发自定义事件 -->
    <button @click="$emit(&#39;my-event&#39;)">触发自定义事件</button>
  </div>
</template>

<script>
  export default {
    methods: {
      childMethod: function () {
        // 这是子组件的方法代码块
      }
    }
  }
</script>
<!-- ParentComponent.vue -->
<template>
  <div>
    <child-component @my-event="parentMethod"></child-component>
  </div>
</template>

<script>
  import ChildComponent from './ChildComponent.vue';
  
  export default {
    components: {
      'child-component': ChildComponent
    },
    methods: {
      parentMethod: function () {
        // 这是父组件的方法代码块
      }
    }
  }
</script>

Dans le code ci-dessus, l'événement personnalisé "my-event" est déclenché dans le composant enfant, puis l'événement est écouté via la directive v-on dans le composant parent et lié à la méthode parentMethod, appelant ainsi la méthode du composant enfant dans le composant parent.

En bref, dans Vue, il existe de nombreuses façons d'appeler des méthodes de composants, et nous pouvons choisir différentes manières d'implémenter nos fonctions en fonction de la situation réelle. Dans le même temps, dans le développement réel, nous devons prêter attention à la portée et à la portée des méthodes pour garantir la maintenabilité et la réutilisation 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