1 00:00:02,600 --> 00:00:08,300 Ahora, para eliminar el elemento que se presionó, agregaré una nueva función aquí en el componente de mi aplicación, 2 00:00:08,480 --> 00:00:10,790 por lo que una nueva función que almaceno 3 00:00:11,150 --> 00:00:13,750 en esta constante y la nombraré elimina el controlador 4 00:00:13,970 --> 00:00:20,180 de objetivos y aquí espero obtener la ID del objetivo como entrada porque esta ID nos permite identificar el elemento que 5 00:00:20,180 --> 00:00:22,280 queremos eliminar, como alternativa, también podríamos 6 00:00:22,280 --> 00:00:26,620 obtener el índice en la matriz y luego eliminar el elemento por índice, pero 7 00:00:26,630 --> 00:00:32,450 creo que la ID es aún mejor porque tenemos un La identificación se corresponde claramente con cada elemento, ¿por qué 8 00:00:32,450 --> 00:00:34,480 no usaríamos eso para eliminarlo 9 00:00:34,750 --> 00:00:40,220 y ahora aquí podemos establecer nuestros objetivos del curso porque, por supuesto, quiero actualizar mis objetivos del curso 10 00:00:40,220 --> 00:00:45,070 y nuevamente, estamos haciendo una actualización que se basa en nuestro objetivos actuales del curso, así 11 00:00:45,080 --> 00:00:47,190 que usaré ese formulario de función aquí, 12 00:00:47,240 --> 00:00:50,400 paso una función, una función anónima para establecer objetivos del curso. 13 00:00:50,510 --> 00:00:52,610 Allí obtengo mi instantánea del estado actual, 14 00:00:52,610 --> 00:00:57,890 mis objetivos actuales del curso y en el cuerpo de la función, tengo que devolver los objetivos actualizados del curso. 15 00:00:57,890 --> 00:01:04,490 Ahora, en caso de que se pregunte por qué no tengo llaves aquí, utilizo la sintaxis más corta donde solo tengo una expresión que quiero 16 00:01:04,490 --> 00:01:06,860 devolver, por lo que omito el cuerpo de la 17 00:01:06,860 --> 00:01:10,500 función y la declaración de retorno. Aquí, tendré una declaración un 18 00:01:10,730 --> 00:01:15,380 poco más larga, por lo tanto, quiero tener el cuerpo de la función aquí para 19 00:01:15,860 --> 00:01:22,430 facilitar la lectura porque aquí, devolveré el filtro de objetivos actuales porque el filtro es un método incorporado incorporado en Javascript 20 00:01:22,730 --> 00:01:28,940 que nos permite para devolver una nueva matriz, el filtro siempre produce una nueva matriz que se basa en la 21 00:01:28,940 --> 00:01:32,800 matriz anterior en la que se llama filtrado por un determinado criterio. 22 00:01:32,840 --> 00:01:39,260 Ahora el criterio se pasa al final con la ayuda de una función que se pasa al filtro. Esta función que pasa al filtro obtiene el objetivo porque 23 00:01:39,260 --> 00:01:45,540 esta función se ejecuta en cada elemento de la matriz que está llamando, por lo que en este caso, se ejecuta 24 00:01:45,540 --> 00:01:46,490 en cada objetivo 25 00:01:46,490 --> 00:01:51,800 que tenemos en la matriz de objetivos actual y, por lo tanto, obtenemos ese objetivo. actualmente en 26 00:01:51,800 --> 00:01:52,220 ejecución 27 00:01:52,220 --> 00:01:57,890 y ahora podemos devolver verdadero si queremos mantener ese elemento o falso si queremos soltarlo y queremos volver 28 00:01:57,890 --> 00:02:05,150 verdadero si el ID del objetivo que estamos viendo no es igual al ID del objetivo que ' estamos obteniendo un argumento porque esa 29 00:02:05,250 --> 00:02:09,560 es la ID del objetivo que queremos eliminar, por lo que solo queremos mantener 30 00:02:09,710 --> 00:02:14,750 los elementos donde estas ID no coinciden porque si coinciden, entonces ese es el elemento del 31 00:02:14,750 --> 00:02:16,000 que queremos deshacernos y 32 00:02:16,070 --> 00:02:19,580 por lo tanto, por supuesto, quiero eliminarlo de nuestra nueva matriz. 33 00:02:20,120 --> 00:02:25,820 Así que esta es la lógica de filtro para deshacerse de un elemento y devolverlo aquí como nuestro nuevo estado que finalmente 34 00:02:25,820 --> 00:02:27,620 se establece a partir de entonces. 35 00:02:27,620 --> 00:02:35,810 Ahora podemos conectar el controlador de eliminación a onDelete y ahora tenemos dos opciones o múltiples opciones para hacer esto, simplemente podemos señalar agregar controlador de eliminación 36 00:02:35,810 --> 00:02:36,760 de objetivos, 37 00:02:36,830 --> 00:02:42,200 pero tenga en cuenta que debe pasar la ID. Entonces, la opción número uno es que también reenvíe 38 00:02:42,200 --> 00:02:50,710 la ID aquí al elemento objetivo simplemente apuntando a itemData. articulo. id porque al igual que cada elemento 39 00:02:50,770 --> 00:02:57,760 tiene un valor, cada elemento aquí también tiene una ID porque estamos agregando una ID cuando estamos agregando un elemento 40 00:02:57,760 --> 00:03:03,260 allí arriba y ahora desde que pasamos la ID al elemento objetivo y pasamos el 41 00:03:03,260 --> 00:03:09,280 accesorio onDelete al elemento de objetivo, dentro del elemento de objetivo, aquí donde llamamos a OnDelete al 42 00:03:09,280 --> 00:03:14,320 final o donde reenviamos el controlador onDelete apunta a onPress, también podríamos vincular esto 43 00:03:14,320 --> 00:03:20,320 para establecer un argumento predeterminado cuando se llama y el argumento predeterminado aquí sería ID de accesorios, 44 00:03:20,320 --> 00:03:25,900 por lo que la ID que también estamos obteniendo para que esta ID se pase 45 00:03:25,900 --> 00:03:32,800 a onDelete cuando se la llame a una prensa. Esa es la opción número uno y es la opción que usaré, pero 46 00:03:32,800 --> 00:03:38,530 también para mostrarle la otra opción, la otra opción sería que no pase la ID al elemento del objetivo, sino que 47 00:03:38,530 --> 00:03:44,050 aquí en Eliminar, ya sabe al final el controlador de eliminación de objetivos se ejecutará y luego aquí puede agregar 48 00:03:44,080 --> 00:03:50,590 vincular esto y luego señalar ese itemData. articulo. id, eso también funcionaría. 49 00:03:51,040 --> 00:03:56,280 Sin embargo, ahora revertiré esto e iré con el enfoque donde toda la información está dentro del elemento 50 00:03:56,290 --> 00:04:04,030 objetivo y conectamos nuestra función con la ID desde dentro del elemento objetivo. Ahora con eso, deberíamos tener una configuración en la 51 00:04:04,030 --> 00:04:06,880 que todos podamos eliminar nuestros objetivos. 52 00:04:06,910 --> 00:04:13,780 Esperemos a que se vuelva a cargar y probémoslo tal vez aquí en iOS, queremos aprender React Native y ahora quiero 53 00:04:13,840 --> 00:04:17,830 usar un nombre diferente, para que podamos ver si eliminamos el correcto. 54 00:04:17,830 --> 00:04:26,520 Queremos aprenderlo todo, también queremos ser realmente buenos en React Native y lo que sea, y ahora haré clic en aprender 55 00:04:26,980 --> 00:04:33,790 todo para eliminar eso y eso parece funcionar. Aquí, Learn React Native 56 00:04:34,060 --> 00:04:35,710 y 57 00:04:35,710 --> 00:04:40,720 ahora el último. Lo eliminaré y también sin ningún error 58 00:04:40,750 --> 00:04:47,440 aquí, por lo que esto parece funcionar bien y con eso, estamos eliminando elementos con la ayuda de la opacidad 59 00:04:47,440 --> 00:04:54,700 táctil, táctil en este caso, que le ayuda a registrar eventos, como onPress, en cualquier componente o en cualquier componente que necesite.