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

219
Views
Alcance del constructor del módulo ES6

Me he topado con un comportamiento que no puedo entender. ¿Podría alguien, más competente con JS, echarle un vistazo rápido?

Me disculpo por publicar capturas de pantalla en lugar de configurar un ejemplo de trabajo aquí, pero espero que sea suficiente para que un experto reconozca rápidamente cuál es el motivo.

  • Tengo una clase JS en un módulo ES6
  • Paso una función al constructor de la clase.
  • Adjunto un controlador de eventos a un HTMLElement y en este controlador espero tener esta función accesible.

Es accesible si no uso módulos ES6, lo he comprobado. Entonces, la razón debe estar relacionada con el alcance de los módulos ES6 y también sospecho que el shadow DOM puede estar relacionado.

Entonces, en este punto, en la línea 8, se define la función notifyController imagen de la ventana de la consola de un navegador, la función está definida .

Pero cuando se ejecuta el controlador de eventos, no está definido. imagen de la ventana de la consola de un navegador, la función no está definida

¿Cómo?

Gracias de antemano.


Resuelto:

El motivo resultó ser que el constructor de vistas se llamó dos veces. Muchas gracias a @Bergi que sugirió que esta era una posible razón.

Una vez manualmente con los parámetros esperados, en un archivo de módulo. La otra vez automáticamente sin los parámetros esperados, porque el html contenía un elemento personalizado al que se asignó esta clase.

En pocas palabras: la razón fue el uso inapropiado de elementos personalizados


Prefiero dejar la pregunta aquí, en caso de que alguien más tenga un problema similar.

about 4 years ago · Juan Pablo Isaza
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!