Búsqueda de sitios web

reactjs - No se puede encontrar el nombre React$Node React Native


Estoy agregando TypeScript a mi aplicación de React Native,

en App.tsx

Estoy recibiendo este error en No se puede encontrar el nombre React$Node en

const App: () => React$Node = () => {
 ...
}

Respuesta #1

No estoy seguro de la sintaxis que estás usando, y no sé de dónde proviene React$Node. Por mi experiencia, la tipificación y sintaxis correctas deberían ser React.ReactNode o React.ReactElement. Por ejemplo:

import React from 'react'

const App = (): React.ReactElement => { 

  return (
    // component code
  )
}

En cuanto a la diferencia entre ReactNode y ReactElement (porque no estaba completamente seguro), encontré útil la respuesta de ford04, que cito aquí:

ReactElement y JSX.Element son el resultado de invocar React.createElement directamente o mediante la transpilación de JSX. Es un objeto con type, props y key. [JSX.Element]

ReactNode se utiliza como tipo de retorno para render() en componentes de clase. También es el tipo predeterminado para el atributo children con [PropsWithChildren]

Artículos relacionados