> For the complete documentation index, see [llms.txt](https://zeroidentidad.gitbook.io/react-puro-19/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://zeroidentidad.gitbook.io/react-puro-19/master.md).

# React Puro - 19

## React puro con Hooks

|             |                                                                                          |
| ----------- | :--------------------------------------------------------------------------------------: |
| Versión     |                                       React 16.13.x                                      |
| Repositorio | [github.com/zeroidentidad/react-puro-19](https://github.com/zeroidentidad/react-puro-19) |

### - Hola mundo

* [react-hello](/react-puro-19/1-hola_mundo/holamundo.md)

### - JSX

* [Qué es y por qué JSX](/react-puro-19/2-jsx/jsx.md)
* [Trabajando con JSX](/react-puro-19/2-jsx/trabajando_jsx.md)
* [Ejemplo componente Tweet](/react-puro-19/2-jsx/tweet.md)

### - Props

* [Las Props](/react-puro-19/3-props/props.md)
* [Pasar Props](/react-puro-19/3-props/pasar_props.md)
* [Recibir Props](/react-puro-19/3-props/recibir_props.md)
* [Comunicación con componentes Padre](/react-puro-19/3-props/comunicacion_componente_padre.md)
* [Ejemplo Tweet con Props](/react-puro-19/3-props/tweet_props.md)

### - PropTypes

* [Documentación y depuración incluida](/react-puro-19/4-proptypes/doc_debug_incluida.md)
* [Cómo validar, formas comunes](/react-puro-19/4-proptypes/formas_validar.md)
* [Ejemplo Tweet con PropTypes](/react-puro-19/4-proptypes/tweet_proptypes.md)
* [PropTypes como documentación](/react-puro-19/4-proptypes/doc_proptypes.md)

### - Children

* [Los Children](/react-puro-19/5-children/children.md)
* [Diferentes tipos de Children](/react-puro-19/5-children/tipos_children.md)
* [Manejando uso Children](/react-puro-19/5-children/manejo_children.md)
* [PropTypes para Children](/react-puro-19/5-children/proptypes_children.md)
* [Personalizar Children antes de renderizar](/react-puro-19/5-children/personalizar_children.md)

### - Practica: GitHub File List

* [Parte inicial](/react-puro-19/6-github-file-list/parte_1.md)
* [Parte 2: la Prop 'key'](/react-puro-19/6-github-file-list/parte_2.md)

### - State en Clases

* [El state](/react-puro-19/7-state-en-clases/state.md)
* [Ejemplo inicial: un contador](/react-puro-19/7-state-en-clases/ejemplo_contador.md)
* [setState es Asincrónico](/react-puro-19/7-state-en-clases/setstate_asincrono.md)
* [Fusión superficial vs profunda](/react-puro-19/7-state-en-clases/fusion_superficial_profunda.md)
* [Sintaxis limpia en Class Components](/react-puro-19/7-state-en-clases/sintaxis_limpia_class_components.md)
* [Manejo de eventos](/react-puro-19/7-state-en-clases/manejo_eventos.md)

### - Ciclo de vida del componente

* [El ciclo](/react-puro-19/8-ciclo-vida-componente/ciclo.md)
* [Fases](/react-puro-19/8-ciclo-vida-componente/fases.md)
* [Montaje](/react-puro-19/8-ciclo-vida-componente/montaje.md)
* [Representación](/react-puro-19/8-ciclo-vida-componente/representacion.md)
* [Desmontaje](/react-puro-19/8-ciclo-vida-componente/desmontaje.md)
* [Manejo de errores](/react-puro-19/8-ciclo-vida-componente/manejo_errores.md)

### - Solicitudes API en React

* [Intro](/react-puro-19/9-requests-api/intro.md)
* [Eligir libreria HTTP](/react-puro-19/9-requests-api/libreria_http.md)
* [Obtener datos y mostrarlos](/react-puro-19/9-requests-api/obtener_mostrar_datos.md)

### - State en Funciones

* [Intro Hooks](/react-puro-19/10-state-en-funciones/intro_hooks.md)
* [El useState Hook](/react-puro-19/10-state-en-funciones/usestate_hook.md)
* [La "magia" de los Hooks](/react-puro-19/10-state-en-funciones/magia_hook.md)
* [Reglas de los Hooks](/react-puro-19/10-state-en-funciones/reglas_hooks.md)
* [Actualizar State basado en State anterior](/react-puro-19/10-state-en-funciones/actualizar_state_de_state_anterior.md)
* [State como un Array](/react-puro-19/10-state-en-funciones/state_array.md)
* [State como un Objeto](/react-puro-19/10-state-en-funciones/state_objeto.md)

### - Pensando en uso del State

* [Qué colocar en el State](/react-puro-19/11-pensando-uso-state/que_colocar_en_state.md)
* [Pensando declarativamente](/react-puro-19/11-pensando-uso-state/pensando_declarativamente.md)
* [Dónde mantener el estado](/react-puro-19/11-pensando-uso-state/donde_mantener_estado.md)
* ["Tipos" de componentes](/react-puro-19/11-pensando-uso-state/tipos_componentes.md)

### - Controles de entrada

* [Entradas controladas](/react-puro-19/12-controles-entrada/entradas_controladas.md)
* [Entradas NO controladas](/react-puro-19/12-controles-entrada/entradas_no_controladas.md)

### - El Hook useReducer

* [Qué es un Reducer?](/react-puro-19/13-hook-usereducer/que_es_reducer.md)
* [Un ejemplo más practico](/react-puro-19/13-hook-usereducer/ejemplo_practico.md)
* [Entonces, Redux murió?](/react-puro-19/13-hook-usereducer/redux_muerto.md)

### - El Hook useEffect

* [Intro useEffect](/react-puro-19/14-hook-useeffect/intro_useeffect.md)
* [Límite cuando se ejecuta un Effect](/react-puro-19/14-hook-useeffect/limite_useeffect.md)
* [Solo ejecución en montaje y desmontaje](/react-puro-19/14-hook-useeffect/ejecutar_en_montaje_demontaje.md)
* [Obtener datos (Fetch) con useEffect](/react-puro-19/14-hook-useeffect/fetch_datos_useeffect.md)
* [Re-obtener datos (Re-Fetch) cuando cambian](/react-puro-19/14-hook-useeffect/re-fetch_datos_useeffect.md)
* [Hacer cambios visibles del DOM](/react-puro-19/14-hook-useeffect/visible_cambios_dom.md)

### - La API Context

* [Intro API Context](/react-puro-19/15-api-context/intro_api_context.md)
* [Ejemplo perforación de props](/react-puro-19/15-api-context/drilling_props.md)
* [Patrón "Slots"](/react-puro-19/15-api-context/patron_slots.md)
* [Usando React API Context](/react-puro-19/15-api-context/uso_react_api_context.md)
* [Patrón "Render Props"](/react-puro-19/15-api-context/patron_render_props.md)
* [Otros Patrones de Context](/react-puro-19/15-api-context/otros_patrones_context.md)
* [El Hook useContext](/react-puro-19/15-api-context/hook_usecontext.md)

### - Anexos complementos

* [Ref. Awesome React](https://github.com/enaqx/awesome-react)
* [Ref. Awesome React Hooks](https://github.com/rehooks/awesome-react-hooks)
* [Ref. Awesome React GraphQL](https://github.com/hasura/awesome-react-graphql)
