Programacion Teoria
Programacion Teoria
Flujo de trabajo: el repositorio local esta compuesto por tres arboles administrados
por git:
Directorio de trabajo: contiene los archivos
Index: actúa como zona intermedia
Head: apunta al último commit realizado
git pull <nomre-remoto>: obtiene los archivos del repositorio remote y los combina
con el local
git push <nombre-remoyo> <nombre-de-tu-rama>: envia todos los onjetos
modificados localmente al repositorio remoto
11
Formularios controlados y no controlados javascript (react)
: Formularios no controlados se deja la responsabilidad de procesamiento al DOM,
los imputs se manejan solos y cuando realizamos un submit, se capturan sus
valores para mandarlos a la API
Formularios controlados se los piensa a estos como componentes y hace que los
valores que se quieran mandar a la API se guarden en un estado, se mantiene el
valor del elemento imput en un estado de react en lugar de mantenerlo en el DOM.
Cuando se modifica el estado, se hace un render que actualiza la vista, sin
embargo la vista no puede modificar el estado
(one way data binding) dice que los datos entre vista y estado están ligados
solamente en un sentido.
Input controlado: acepta la prop value para indicar cual es el valor actual que el
input renderizara y una función tipo callback que aparece cuando el valor escrito
en el <input > cambia y se llama onChange. El estado y la interfaz (input) están
siempre en sincronia
Prevent default (): cancela el evento si este ES cancelable. Por ej: al hacer click en
el botón enviar evita que envie el formulario
14 –
Axios es una librería JavaScript que puede ejecutarse en el navegador y que nos
permite hacer sencillas las operaciones como cliente HTTP, por lo que podremos
configurar y realizar solicitudes a un servidor y recibiremos respuestas fáciles de
procesar.
Está altamente pensado para facilitar el consumo de servicios web, API REST que
devuelvan datos JSON.
Tiene nombres de funciones que coinciden con cualquier método http ej: .get()
Para acceder a los datos de JSON solicitados debe usar .then()
Manejo de errores 400 y 500 automatico
Se puede utilizar tanto en el servidor como en el cliente. También se puede usar
en un entorno separado del navegador
npm install axios
rutas a las q se puede realizar solicitudes
GET /post
GET /posts/1
GET /post/1/comments
GET /comments?postid=1
POST /post
PUT /posts/1
PATCH /posts/1
DELETE /posts/1
GET: para obtener datos o recuperarlos. Cuando se monta el componente utiliza
hookuseEffect (importar axios) .get() para realizar una solicitud get a su endpoint y
usar el callback .then() para recuperar todos los datos de respuesta
Un endpoint es una dirección de una API, o un backend que se encarga de dar
respuesta a una petición
POST: para crear nuevos datos. Utiliza el método .post() como segundo
argumento, incluye una propiedad de objeto que especifica como deseas que sea
la nueva publicación. Luego usa callback .then() para recuperar los datos de
respuesta y reemplaza la vieja con la nueva q solicitaste
PUT: para actualizar un recurso determinado. Usando la devolución de
llamada .then() actualiza el JSX con los datos que se devuelven
DELETE: para eliminar un recurso. Se usa para garantizar que la solicitud se
devuelva con éxito .then()
React es una librería js desarrollada por Facebook que sirve para desarrollar SPAs
(Single Page Application) que quiere decir que muestra todo su contenido en una
sola página y carga el contenido de html,css y js en la misma.
React usa una sintaxis de XML que es similar al html y también utiliza jsx que es
una extensión de js para uso con react
•se usan comillas para usar strings como atributos
•llaves para una expresión js
•se puede cerrar una etiqueta con />
Componentes se los crea aparte y nos permite indicarle a react que mostrar en
pantalla. Y deben tener la primera letra del nombre en mayúscula
*Componentes funcionales: se usan funciones tal y como haríamos en js
*Componentes de clases: se debe extender de la clase react.component
Props que son propiedades y tienen una importante función, pasan los datos de un
componente a otro ofreciendo así un canal de por medio por el cual los
componentes se pueden comunicar
*las props deben considerarse como sólo de lectura
*pueden tener un valor por defecto
*son inmutables
Con React-bootstrap se pueden crear más componentes pero hay que importarlos
de la librería. Por ej: Tarjetas,Alertas,Carrusel, etc.
Renderizado condicional se utiliza para mostrar un cierto componente u otro
dependiendo de una condición.
Existen dos formas para hacer un renderizado condicional
*operador lógico && => evalúa de la mano de un true o false, entonces si la
condición es true, los elementos despues del operador && se mostrará y si es
false React JS lo ignora y no lo muestra.
*operador ternario => condición ? Expre1 : Expre2 si la condición es true muestra
el valor de la Expre1 y si no, muestra el valor de la Expre2.
Para renderizar componentes de forma condicional se puede usar operadores de
js como el if o el operador condicional
Para hacer un Renderizado De Listas se puede usar el método filter() de js para
devolver solo esos datos, este método agarra un array de objetos, los pasa por
una función para saber si es true o false y devuelve un array con los objetos true
Funcion flecha permite definir de manera compacta una función convencional, esta
función permite eliminar llaves y el return.
() => { sentencias }
•Un parámetro con una expresión simple, no necesita return
•Varios parámetros requieren paréntesis con una expresión simple no necesita
return
•La declaración de varias líneas requieren corchetes y return
•Varios parámetros requieren paréntesis y las declaraciones de varias líneas el
corchete y return
•Si es con nombre se trata la función flecha como una variable
Los Eventos permiten que los usuarios visitantes interactuen con los componentes
Los eventos de react se nombran usando camelCase, en vez de minúsculas
Para implementar un evento hay que hacer dos cosas: Primero el tipo de evento
que hay que utilizar y luego el método que hará las veces de manejador de evento
UsseEffect: recibe como parámetro una función que se ejecutará cada vez que nuestro
componente se renderice, ya sea por un cambio de estado, por recibir props nuevas o, y esto es
importante, porque es la primera vez que se monta.