Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Learn Emitting Events from Components | Section
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Vue.js Fundamentals and App Development

bookEmitting Events from Components

Swipe to show menu

Components can send data back to their parent by emitting events. This allows child components to communicate when something happens, such as a button click.

To emit an event, use defineEmits() inside the component.

<!-- ButtonComponent.vue -->
<script setup>
const emit = defineEmits(["clickEvent"]);

function handleClick() {
  emit("clickEvent");
}
</script>

<template>
  <button @click="handleClick">Click</button>
</template>

The component emits a custom event called "clickEvent".

In the parent component, you listen to this event.

<script setup>
import ButtonComponent from "./components/ButtonComponent.vue";

function handleEvent() {
  console.log("Event received");
}
</script>

<template>
  <ButtonComponent @clickEvent="handleEvent" />
</template>

When the button is clicked, the event is emitted and handled in the parent.

Emitting events allows components to communicate and keep logic organized.

question mark

Which statement best describes how a child component emits an event to its parent in Vue.js?

Select the correct answer

Everything was clear?

How can we improve it?

Thanks for your feedback!

Section 1. Chapter 12

Ask AI

expand

Ask AI

ChatGPT

Ask anything or try one of the suggested questions to begin our chat

Section 1. Chapter 12
some-alt