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

349
Views
Establecer icono para un botón: TypeError no capturado: no se pudo ejecutar 'appendChild' en 'Node': el parámetro 1 no es del tipo 'Node'

Estoy tratando de configurar un ícono para un botón en reaccionar, pero me está dando este error. El setIcon de la funcionalidad Button y el botón es así desde el código fuente:

 class Button { node: HTMLButtonElement icon: SVGElement constructor() { this.node = document.createElement('button'); this.node.type = 'button'; this.icon = null; } setIcon(icon: SVGElement) { this.icon = icon; this.node.appendChild(icon); }

El botón es de una biblioteca escrita en TypeScript como botón de control de mapbox.

El icono que estoy usando es de MUI,

 import AdjustIcon from '@mui/icons-material/Adjust'

Lo que hice fue this.back.setIcon(AdjustIcon); Y this.back.setIcon(<AdjustIcon/>); Ambos no funcionan y dan el mismo mensaje de error:

TypeError no detectado: no se pudo ejecutar 'appendChild' en 'Node': el parámetro 1 no es del tipo 'Node'.

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

0

El problema se solucionó, <AdjustIcon/> es un elemento de reacción pero no un nodo DOM.

Sin embargo .appendchild() espera un nodo DOM como parámetro, y eso causó el error.

La solución a esto es convertir <AdjustIcon/> en un nodo DOM, y estaba usando ReactDOM.render() para hacerlo.

 const container = document.createElement('icon'); ReactDOM.render(<AdjustIcon />, container); this.back.setIcon(container);

Usa document.createElement() para crear un contenedor y llama a ReactDOM.render() para representar el icono en ese contenedor. Luego, simplemente use ese contenedor como el nodo del icono.

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!