Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

136
Visualizações
¿Por qué React elige no adherirse al patrón de clase con ReactElement?

Actualmente estoy leyendo el código fuente de React. En la mayoría de los casos, prefieren el patrón de clase a la función de fábrica como constructor de instancias.

Hasta que me encuentro con ReactElement : react/packages/react/src/ReactElement.js

El comentario muestra que eligen NO adherirse al patrón de clase aquí a propósito.

 /** * Factory method to create a new React element. This no longer adheres to * the class pattern, so do not use new to call it. Also, instanceof check * will not work. Instead test $$typeof field against Symbol.for('react.element') to check * if something is a React Element. * * @params omitted * ... */ const ReactElement = function(type, key, ref, self, source, owner, props) { // code omitted }

Pero de acuerdo con este comentario, hay al menos dos deficiencias obvias,

  1. El usuario no puede usar new ReactElement() para crear una instancia del elemento (como solía hacerlo en otros lugares).
  2. element instanceof ReactElement ya no funciona.

Creo que tomaron esa decisión por una buena razón, pero no aparece en el comentario. ¿Alguien puede dar alguna explicación?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

La función simplemente devuelve un objeto simple con $$typeof: REACT_ELEMENT_TYPE . No hay necesidad de convertirlo en un constructor de clase. Supongo que hacer esto es más optimizable para los motores JS.

El usuario no puede usar el nuevo ReactElement() para crear una instancia del elemento (como solía hacerlo en otros lugares).

Los usuarios finales de React nunca llaman a esto por sí mismos. Llaman a React.createElement() .

element instanceof ReactElement ya no funciona.

Como usuario final (como un desarrollador interno de React), ¿alguna vez ha necesitado algo así? Estaría inspeccionando las partes internas de un árbol JSX.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda