Vue.js emit: la guida completa agli eventi tra componenti

Vue.js emit: la guida completa agli eventi tra componenti

Vue.js è un framework JavaScript molto diffuso per costruire applicazioni web interattive. Una delle sue funzionalità più potenti è vue js emit, che permette a un componente di inviare eventi verso il proprio padre. Questa guida dettagliata ti spiega come usare vue js emit nel tuo codice Vue.js.

Che cos’è Vue js emit?

$emit è il modo in cui i componenti Vue.js comunicano tra loro. Ti permette di inviare eventi dal figlio al padre, quindi di scatenare un’azione in un componente padre a partire da un componente figlio.

Perché usarlo?

emit serve ogni volta che devi far risalire informazioni o eventi da un componente figlio al componente padre. Hai un form in un componente figlio e vuoi passarne i dati al padre perché li elabori? emit è lo strumento giusto.

Come si usa Vue js emit?

Usare emit è semplicissimo. Per prima cosa dichiara un evento nel componente figlio con il metodo $emit(). Ecco un esempio:

javascript
this.$emit('eventName', data)

eventName è il nome dell’evento e data sono i dati che vuoi inviare insieme all’evento.

Poi ti metti in ascolto dell’evento nel componente padre con la direttiva v-on:

javascript
<ChildComponent v-on:eventName="eventHandler"/>

eventHandler è il metodo chiamato quando l’evento viene scatenato.

Esempio completo di $emit

Ecco un esempio completo che mostra come usare emit nel tuo codice Vue.js:

javascript
<template>
  <div>
    <ChildComponent @eventName="eventHandler"/>
  </div>
</template>

<script>
import ChildComponent from './ChildComponent.vue'

export default {
  components: {
    ChildComponent
  },
  methods: {
    eventHandler (data) {
      console.log(data)
    }
  }
}
</script>

// ChildComponent.vue
<template>
  <button @click="sendData">Envoyer les données</button>
</template>

<script>
export default {
    methods: {
        sendData () {
            this.$emit('eventName', 'Données envoyées depuis le composant enfant')
        }
    }
}
</script>

In questo codice abbiamo un componente padre che include un componente figlio, `ChildComponent`. Quando fai clic sul pulsante nel componente figlio, l’evento `eventName` viene scatenato con i dati `‘Données envoyées depuis le composant enfant‘`. Il componente padre resta in ascolto di quell’evento con la direttiva `@eventName` e chiama il metodo `eventHandler` quando l’evento si verifica.

Conclusione

In sintesi, `emit` è una funzionalità potente di Vue.js che ti permette di far risalire eventi da un componente figlio a un componente padre. È facile da usare e può diventare uno strumento prezioso per la comunicazione tra i componenti della tua applicazione. Con questa guida completa dovresti riuscire a usare `emit` con sicurezza nel tuo codice Vue.js.

JavaScriptVue.js

Damien Flandrin Sviluppatore web dal 2010, creatore di Gekkode e di Email Impact. Ogni articolo è testato su un progetto reale prima della pubblicazione. Contatti
Newsletter

I nuovi test, tutorial e progetti, via e-mail.

Test riproducibili, codice versionato, risultati datati. Mai spam.