Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

478
Views
Why is the focus event fired twice from a Vue 3 child component?

When I fire a focus event from a top level input field in Vue 3:

<input @focus="$emit('focus')">

...the event is fired once when the input field is focused (as I would expect).

However, when you put this same input field into a child component and focus it:

<InputField @focus="$emit('focus')" />

...the event is fired twice.

See https://stackblitz.com/edit/vue-wjhche?devToolsHeight=33&file=src/components/HelloWorld.vue

Can you please help me to understand why this is happening? Thanks!

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

So, you shouldn't put a focus event in the child component, and also in the input field too, as the child component already will bind its focus event to the input so the focus event will be called twice, as the input is the root element.

Just removing the focus event from the input will solve the issue.

https://stackblitz.com/edit/vue-676vsb?file=src/components/InputField.vue

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!