1 00:00:02,170 --> 00:00:10,580 Ahora sabemos cómo podemos almacenar y obtener datos, por supuesto, en nuestra aplicación, también podemos editar y eliminar datos. 2 00:00:10,690 --> 00:00:15,760 Así que asegurémonos de que esto funcione también y para eso, 3 00:00:16,360 --> 00:00:26,320 volveré a mis acciones y allí, en el archivo de acciones de productos, tenemos nuestro creador de acciones de productos de actualización aquí. 4 00:00:26,360 --> 00:00:31,050 Ahora, al igual que antes, ahora cambiaré esto para devolver el envío asíncrono y 5 00:00:31,340 --> 00:00:39,440 luego, al final, allí, enviar esta acción aquí, así que muévala allí y llame a la función de envío aquí que recibimos a 6 00:00:39,440 --> 00:00:42,250 través de Redux Thunk y antes de 7 00:00:42,470 --> 00:00:47,420 nosotros. hacer eso, ahora podemos comunicarnos con el servidor y actualizar nuestros datos allí. 8 00:00:47,470 --> 00:00:55,010 Ahora que será bastante simple, podemos volver a usar la sintaxis de create product, esto aquí, por lo que solo la solicitud 9 00:00:55,010 --> 00:01:02,390 de búsqueda solo debería ser suficiente aquí y hacerlo antes de enviar, gracias a esperar esperaremos esto porque esta función de 10 00:01:02,390 --> 00:01:07,610 envío es invisible se envuelve en el bloqueado que pertenece a esta promesa, pero necesitamos 11 00:01:07,610 --> 00:01:09,010 ajustar esta solicitud, 12 00:01:09,020 --> 00:01:15,050 la URL, por ejemplo, no es del todo correcta, apunta al producto pero ahora queremos apuntar a un 13 00:01:15,080 --> 00:01:20,990 producto específico, el único producto que queremos actualizar. Por lo tanto, usaré una sintaxis Javascript 14 00:01:20,990 --> 00:01:26,960 diferente aquí con marcas de retroceso en lugar de comillas simples, que todavía crean una cadena 15 00:01:26,960 --> 00:01:33,980 pero una cadena donde puedo inyectar fácilmente datos dinámicos y agregaré un nuevo segmento después de los productos anteriores. json y ahora podemos inyectar datos con esta sintaxis $ \ y eso es Javascript vainilla, 16 00:01:33,980 --> 00:01:40,970 no es específico de React Native, es solo Javascript y aquí quiero agregar mi 17 00:01:41,030 --> 00:01:48,850 ID, para que al final apunte a esta URL, luego al nodo de productos y luego esta identificación. Por supuesto, si está utilizando una API diferente, entonces Firebase las URL a las que debe enviar su 18 00:01:48,880 --> 00:01:55,630 solicitud serán diferentes, entonces debe tener una 19 00:01:55,660 --> 00:02:01,810 documentación de la API que le indique qué URL son aceptadas o si está 20 00:02:01,810 --> 00:02:07,810 escribiendo su propia API, entonces usted definitivamente debería saber dónde puede enviar solicitudes. Así es como Firebase lo quiere y el método ahora para actualizar también no 21 00:02:07,810 --> 00:02:13,270 debe publicarse sino parchearse o colocarse. Put anulará completamente el recurso con 22 00:02:13,300 --> 00:02:20,980 los nuevos datos, el parche lo actualizará en los 23 00:02:20,980 --> 00:02:27,130 lugares donde usted le indique que lo actualice y eso es lo que quiero aquí. También necesito agregar mis encabezados y ahora también agregar un cuerpo con el título, la descripción y la imagenUrl 24 00:02:27,130 --> 00:02:34,270 pero, por supuesto, no con el precio porque no estamos 25 00:02:34,270 --> 00:02:38,240 obteniendo esto y no queremos tocar esto y esto enviará la solicitud 26 00:02:38,980 --> 00:02:45,110 donde Firebase solo cambiará automáticamente estos campos en el producto con esta ID a la que nos dirigimos. Ahora en realidad no necesito almacenar la respuesta de forma constante porque de todos 27 00:02:45,110 --> 00:02:51,390 modos no me importa, es importante 28 00:02:51,390 --> 00:02:56,880 que esperemos a que esto se complete y con eso, deberíamos ser buenos. Si ahora guardamos eso y vamos aquí a administrador y comenzamos a editar esto y tal vez agreguemos 29 00:02:56,880 --> 00:03:05,640 un signo de exclamación aquí y luego importante, haga clic en otro lugar para 30 00:03:05,640 --> 00:03:12,540 que esto se vuelva a activar debido a nuestra lógica de formulario y envíe sus nuevos datos y luego haga clic en esta marca 31 00:03:12,540 --> 00:03:19,140 de verificación, nos llevan de regreso y vemos una camisa blanca aquí, también vemos esto en Firebase, así que esto está funcionando. Así es como podemos actualizar los datos, ahora ¿qué pasa con la eliminación? Para esto volvamos a nuestras acciones y para eliminar, tenemos nuestro 32 00:03:19,140 --> 00:03:25,620 creador de acciones. Ahora, al igual 33 00:03:25,620 --> 00:03:32,550 que antes, aquí regresé como una función 34 00:03:32,580 --> 00:03:40,250 asincrónica que se despacha como argumento y, en esta función, al final despachamos esta acción 35 00:03:40,250 --> 00:03:48,360 que llega a nuestro reductor y antes de llegar a eso, podemos enviar nuevamente una solicitud. Solicitud que se ve así, copiaré esta parte aquí, no me importa la respuesta 36 00:03:48,360 --> 00:03:56,950 realmente, así como así, aguarde la búsqueda. Ahora, la URL es incorrecta, al igual que para la actualización, quiero agregar 37 00:03:56,950 --> 00:04:04,240 mi ID allí, por lo tanto, usaré ticks de retroceso para 38 00:04:04,400 --> 00:04:10,900 poder usar esta sintaxis de inyección nuevamente y agregar la ID del producto aquí, enviar una solicitud de eliminación y ganamos 39 00:04:11,350 --> 00:04:17,790 No es necesario establecer un encabezado porque tampoco tendremos un cuerpo, por lo que podemos deshacernos de todo eso, solo el 40 00:04:17,790 --> 00:04:23,140 método es importante y que esperamos y, por lo tanto, ahora también deberíamos poder eliminar los datos. Podemos echar un vistazo rápido a esto, si creo un nuevo producto ficticio que puedo eliminar fácilmente sin 41 00:04:23,140 --> 00:04:28,570 perder demasiado, así, si lo guardo, si hago clic 42 00:04:28,570 --> 00:04:35,500 en Eliminar aquí, haga clic en Sí, se fue aquí y también lo vimos durante una fracción de segundo aquí, también se eliminó en Firebase. Así es como también podemos actualizar 43 00:04:35,860 --> 00:04:43,210 y eliminar.