React es una biblioteca de JavaScript declarativa, eficiente y flexible para crear interfaces de usuario. Es ‘V’ en MVC. ReactJS es una biblioteca front-end de código abierto basada en componentes responsable solo de la capa de visualización de la aplicación.
El navegador no entiende React, solo entiende HTML, CSS y JavaScript. Entonces, para convertir React en JavaScript válido, usamos un paquete web llamado Babel. Se usa para convertir JSX en objetos y luego devolver ese objeto. Babel ya está incluido en el modelo generado por create-react-app.
Entendamos con la ayuda del ejemplo.
Paso 1: Creación de la aplicación React
npx create-react-app reactapp
Paso 2: después de crear la carpeta de su proyecto ieloops, muévase a ella usando el siguiente comando:
cd reactapp
Estructura del proyecto: Tendrá el siguiente aspecto.
Paso 3: Escribe el siguiente código en App.js. A continuación se muestra una sintaxis JSX. Entonces, cada vez que lo use, necesitará React importado.
App.js
import React from 'react' import ReactDOM from 'react-dom' function App() { return <h1>Hello, World!</h1> } const rootElement = document.getElementById('root') ReactDOM.render(<App />, rootElement)
El JSX anterior se convierte a este por Babel internamente
Object $$typeof: Symbol(react.element) key: null props: {children: 'Hello, World!'} ref: null type: "h1" _owner: null _store: {validated: false} _self: null _source: {fileName: '/src/index.js', lineNumber: 5, columnNumber: 10} [[Prototype]]: Object
Explicación:
- tipo: en este ejemplo, nuestro componente es el objeto que representa el elemento raíz, que es el elemento h1. type es la propiedad que corresponde al elemento HTML.
- props: esta propiedad contiene todos los elementos secundarios y, en nuestro caso, es ¡Hola, mundo!
- clave: es posible que sepa que pasamos la clave como accesorio mientras mapeamos en React, que en nuestro caso es nulo. Se utiliza para identificar de forma única un elemento en el DOM virtual.
- ref: cuando necesita modificar imperativamente un niño fuera del flujo de datos típico, necesitamos ref.
- $$typeof: esta propiedad identifica el objeto como un elemento React
Lo que ve el navegador después de compilar el código es el siguiente código.
App.js
import React from 'react' import ReactDOM from 'react-dom' function App() { return React.createElemet("h1",null,"Hello World") ; } const rootElement = document.getElementById('root') ReactDOM.render(<App />, rootElement)
Puede verlo usted mismo iniciando sesión en la consola.
App.js
import React from 'react' import ReactDOM from 'react-dom' function App() { return <h1>Hello, World!</h1> } const rootElement = document.getElementById('root') console.log(App()) ReactDOM.render(<App />, rootElement)
Explicaciones: el JSX ingresa internamente en muchas llamadas a la función React.createElement() y cada una de ellas devuelve un objeto como se muestra arriba. Ahora, debido a esto, necesitamos importar React desde «react» ya que internamente cada JSX está creando un componente React usando el transformador JSX.
Entonces, para usar la función createElement necesitamos importar React y si no lo importamos
entonces la función React.createElement no estará definida.
Nota: desde la versión 17 de React, ni siquiera necesita importar React desde «react» para proyectos más pequeños, pero las versiones anteriores de los proyectos de React necesitan importarlo. El transformador JSX internamente se encarga de convertir un JSX en elementos React, pero es posible que aún deba importarlo para usar ganchos como useState y useEffect. No necesitamos importar React en archivos como acciones, reductores, etc. porque no tenemos JSX allí.
Paso para ejecutar la aplicación: Abra la terminal y escriba el siguiente comando.
npm start
Producción:
Publicación traducida automáticamente
Artículo escrito por prasanna1995 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA