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

305
Views
¿Por qué bind() funciona de manera tan inconsistente en los controladores de eventos de plantilla de Vue?

Al experimentar con un poco de sintaxis elegante en mis plantillas hoy, me encontré con un comportamiento confuso de la función bind() en los controladores de eventos de Vue.

Ignorando cualquier posible mala práctica y el hecho de que el enlace es completamente inútil aquí, mire los siguientes 2 ejemplos de código.

1.

 <template> <button @click="(() => console.log('this gets logged')).bind()"></button> </template> <script> export default { computed: { console: () => console, }, } </script>
 <template> <button @click="myFunc.bind()"></button> </template> <script> export default { methods: { myFunc () { console.log("this doesn't get logged") } } } </script>

El ejemplo de código 1 registra correctamente una salida en la consola al hacer clic en el botón, pero por algún motivo, el ejemplo 2 no registra nada. ¿Por qué?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

myFunc.bind() en el Ejemplo 2 devuelve la referencia a la nueva función, pero no la llama.

Para que funcione como se espera, se myFunc.bind()() .

 <template> <button @click="myFunc.bind()()"></button> </template>
  • parece cansado, pero funciona
about 4 years ago · Juan Pablo Isaza 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!