@types/react
y tuve problemas.Definitions by:
en index.d.ts
) para que puedan responder.Hubo cierta discusión sobre el tipo adecuado de React.Fragment
en # 21146, pero aunque symbol | number
podría reflejar con precisión el tipo de React interno para Fragment
, evita React.Fragment
de ser utilizado como un elemento TSX.
<React.Fragment> // error here: React.Fragment does not have any construct or call signatures
<div>Child 1</div>
<div>Child 2</div>
</React.Fragment>
Me doy cuenta de que podemos renderizar fragmentos usando la sintaxis <></>
, pero los documentos de React establecen que esto simplemente elimina el azúcar en <React.Fragment></React.Fragment>
y que esta es la única forma de agregar claves a un fragmento .
Por lo tanto, creo que el tipo de React.Fragment
debería cambiarse a algo más cercano a React.ComponentType<{}>
, lo que le dará key
y children
props.
Puedo abrir un PR si la gente está de acuerdo con esta propuesta.
¡Gracias por escuchar esto, @jgoz!
Creo que el mejor enfoque podría ser que arreglemos esto del lado de TypeScript, en lugar de cambiar el tipo de React.Fragment
para modificar el comportamiento del compilador.
Examinaré esto y veré si ese es el mejor enfoque.
@uniqueiniquity Suena bien. Tengo una rama lista para funcionar si arreglarla en TS no es posible / práctico.
@jgoz Adelante, abre el PR. Después de un poco de discusión aquí, parece que tiene el enfoque correcto por el momento.
Comentario más útil
@uniqueiniquity Suena bien. Tengo una rama lista para funcionar si arreglarla en TS no es posible / práctico.