1 00:00:02,350 --> 00:00:15,370 Entonces, cuando visitamos nuestra área de administración y luego queremos agregar un nuevo producto, obtenemos esta área aquí. 2 00:00:15,430 --> 00:00:18,460 Obtenemos este error de que obtener param no es una función. 3 00:00:18,460 --> 00:00:28,270 Y, de hecho, con la reactivación de cinco funciones para obtener días de parámetros que usaría para obtener los parámetros para 4 00:00:28,270 --> 00:00:31,600 una acción de navegación dada se eliminó. 5 00:00:31,600 --> 00:00:35,170 Entonces, veamos qué más podemos hacer para eso. 6 00:00:35,170 --> 00:00:41,800 Vayamos a esta pantalla de producto agregado, que es la pantalla que estamos tratando de visitar 7 00:00:41,890 --> 00:00:50,700 y que falla aquí, y ciertamente usamos get param aquí, pero también aquí en el componente principal de la pantalla de producto agregado. 8 00:00:50,850 --> 00:00:55,740 Ahora con la reactivación 5 ya no hay función get param. 9 00:00:55,770 --> 00:01:03,060 En cambio, ahora hay un nuevo accesorio además de ese accesorio de navegación, que también tienes que hacer ciertas acciones, como navegar 10 00:01:03,060 --> 00:01:09,390 lejos, pero ahora tienes un nuevo accesorio, un Bill de ballena, que es el accesorio raíz que antes no 11 00:01:09,390 --> 00:01:10,310 estaba disponible. 12 00:01:10,320 --> 00:01:17,490 Ahora sí existe ahora en este accesorio raíz, tendrá una clave principal recién nombrada. 13 00:01:17,490 --> 00:01:23,820 Los padres no tienen padres, no es una función, es solo una clave llamada padres que contiene un objeto 14 00:01:23,850 --> 00:01:28,340 con todos tus padres que estás recibiendo como pares de valores clave. 15 00:01:28,350 --> 00:01:32,310 Entonces aquí podemos extraer convenientemente el padre que queremos obtener. 16 00:01:32,310 --> 00:01:35,940 Entonces, antes de querer obtener el producto I. RE. param. 17 00:01:35,970 --> 00:01:41,980 Así que ahora accedemos a los accesorios de ruta de productos permanentes I. RE. Y esto debería funcionar. 18 00:01:42,150 --> 00:01:47,000 Ahora, dependiendo de su aplicación, es posible que no siempre obtenga un valor para este parámetro. 19 00:01:47,010 --> 00:01:53,970 Por lo tanto, a veces puede no estar definido y, por esa razón, por supuesto, puede verificar si 20 00:01:54,240 --> 00:01:59,100 esto es nulo o si está indefinido antes de intentar usarlo. 21 00:01:59,110 --> 00:02:08,680 Ahora, cuando se trata de establecer padres que también estaban usando aquí en este componente, esto todavía existe, pero por la 22 00:02:08,710 --> 00:02:13,770 razón que lo estamos usando aquí, ya no necesitamos usarlo. 23 00:02:13,840 --> 00:02:20,650 Aquí lo estábamos usando como una solución para Q Básicamente obtener datos de nuestro cuerpo componente. 24 00:02:20,650 --> 00:02:25,960 Entonces, desde el interior de nuestra función componente, dentro de las opciones de navegación allí. 25 00:02:25,960 --> 00:02:26,280 Correcto. 26 00:02:26,290 --> 00:02:33,130 La función de envío y también aquí nuestro producto I. RE. Estábamos extrayendo esa información ahora 27 00:02:33,130 --> 00:02:38,710 para el producto I. RE. eso está bien porque es una información específica de ruta 28 00:02:38,710 --> 00:02:39,580 general que nos interesa. 29 00:02:39,800 --> 00:02:45,430 Todavía podemos extraerlo de esta manera, pero obtener la función de nuestro componente para las 30 00:02:45,460 --> 00:02:51,460 opciones de navegación como lo hicimos antes fue realmente un poco confuso y no realmente cómo queremos hacerlo. 31 00:02:51,460 --> 00:02:56,640 Sin embargo, por el momento mantendré el mismo enfoque que antes, pero una cosa debe cambiar. 32 00:02:56,650 --> 00:02:58,610 Ya no tenemos param. 33 00:02:58,700 --> 00:03:06,040 En cambio, los datos de navegación son un objeto que también tiene este nuevo objeto raíz, este nuevo objeto raíz, por 34 00:03:06,280 --> 00:03:15,910 lo que podemos acceder a los datos de navegación punto raíz punto permisos punto enviar y obtener la función de envío como esta y la misma allí abajo. 35 00:03:15,920 --> 00:03:24,280 Aquí tenemos punto raíz punto pirámides punto producto I. RE. así con todo eso fuera del camino. 36 00:03:24,280 --> 00:03:33,250 Si ahora guardamos esto, esto se reconstruye aquí y con la reconstrucción si ahora vamos al administrador nuevamente y hacemos clic en este icono, aparece 37 00:03:33,250 --> 00:03:40,500 un error que no está definido como un objeto cuando intentó evaluar el envío de permisos de raíz de 38 00:03:40,510 --> 00:03:41,770 datos de navegación. 39 00:03:42,310 --> 00:03:44,920 Entonces, ¿qué hay de malo allí? 40 00:03:44,950 --> 00:03:53,230 El problema al que nos enfrentamos aquí es que los padres no siempre se definen si esta pantalla se carga sin ningún padre, como es el caso 41 00:03:53,230 --> 00:03:58,870 cuando estamos en el modo de producto publicitario, si acabamos de hacer clic en ese botón en la 42 00:03:58,870 --> 00:04:00,400 esquina superior derecha esquina. 43 00:04:00,430 --> 00:04:07,270 Entonces, si no hay padres pasados a la pantalla, esta clave de padres completa aquí se mantiene indefinida como un 44 00:04:07,270 --> 00:04:07,750 valor. 45 00:04:07,780 --> 00:04:10,590 No contiene un objeto vacío sin padres. 46 00:04:10,740 --> 00:04:12,730 En sí mismo no está definido en su lugar. 47 00:04:13,090 --> 00:04:14,730 Eso es importante tener en cuenta. 48 00:04:14,800 --> 00:04:19,020 Los padres mismos no estarán definidos si no hay padres. 49 00:04:19,090 --> 00:04:25,810 Y si estamos abriendo esta pantalla para agregar un producto, en realidad no hay padres inicialmente, este parámetro de envío no 50 00:04:25,870 --> 00:04:30,410 se establece inicialmente porque eso solo se hace desde el interior del componente. 51 00:04:30,430 --> 00:04:36,280 Entonces, después de cargar la pantalla y el producto I. RE. definitivamente no está configurado porque no estamos editando 52 00:04:36,310 --> 00:04:37,000 sino agregando. 53 00:04:37,000 --> 00:04:42,640 Entonces no hay producto I. RE. alimentado a esta pantalla cuando navegamos a ella. 54 00:04:42,670 --> 00:04:46,540 Entonces, ¿cómo nos aseguramos de que no recibamos un error? 55 00:04:46,540 --> 00:04:52,240 Bueno, simplemente tenemos que verificar si los padres están definidos o no. 56 00:04:52,240 --> 00:04:56,460 Y podríamos hacer esto aquí reescribiendo esto. 57 00:04:56,530 --> 00:05:03,670 Entonces, ¿tratamos primero de acceder a los padres y luego usamos esto como una condición en una expresión ternaria y decimos 58 00:05:03,670 --> 00:05:07,320 si los datos son verdaderos y si solo están definidos? 59 00:05:07,510 --> 00:05:15,260 Entonces, si realmente es así, queremos intentar acceder a los padres enviar porque sabemos que al menos los padres no están en 60 00:05:15,260 --> 00:05:19,160 la búsqueda y de lo contrario establecerán la función de envío. 61 00:05:19,160 --> 00:05:23,810 Ahora digamos que podemos repetir este día o dos para el título del encabezado. 62 00:05:23,870 --> 00:05:26,320 Ahora ya tenemos una expresión ternaria aquí. 63 00:05:26,360 --> 00:05:32,600 Podemos anidar esas expresiones, pero para que sea un poco más legible, todas las divisiones se realizan en varias líneas. 64 00:05:32,690 --> 00:05:41,730 Y tendré a mis padres groseros aquí, donde básicamente verifico si los datos groseros de los padres NAF son una cosa si es 65 00:05:42,330 --> 00:05:47,250 así, luego almacenaré a los padres en esta constante padres groseros. 66 00:05:47,250 --> 00:05:49,550 De lo contrario, estableceré esto en un objeto vacío. 67 00:05:49,560 --> 00:05:56,400 Digamos que al hacer esto, podemos usar padres groseros aquí y ahora, ya sea como un objeto vacío, en cuyo caso 68 00:05:56,400 --> 00:06:02,250 podemos acceder al producto I. RE. sin un error, pero como resultado seremos 69 00:06:02,250 --> 00:06:06,090 indefinidos, por lo tanto, estará en modo de producto o si se encuentran los padres. 70 00:06:06,090 --> 00:06:12,360 Luego estableceré el objeto de los padres reales como un valor para los padres groseros y luego accederemos a los objetos de los 71 00:06:12,360 --> 00:06:13,240 padres reales allí. 72 00:06:13,260 --> 00:06:18,900 Entonces, en todos los casos, esto no debería fallar y podemos hacer algo similar en el componente, por supuesto querida, también 73 00:06:18,930 --> 00:06:20,820 tratamos de actuar como nuestros padres. 74 00:06:21,150 --> 00:06:24,430 Entonces aquí también deberíamos verificar si esto es realmente cierto. 75 00:06:24,570 --> 00:06:31,590 Si está definido y si lo está, entonces ejemplificamos a los padres y, de lo contrario, las ideas de productos se establecen en NULL. 76 00:06:31,590 --> 00:06:33,670 Entonces, esta es una manera de cómo podría solucionar esto. 77 00:06:33,690 --> 00:06:41,960 Y si ahora protegemos y recargamos esa aplicación, podemos ir a la pantalla de administración, hacer clic en este botón 78 00:06:42,380 --> 00:06:47,070 y cargar esta pantalla aquí con éxito para agregar un producto. 79 00:06:47,180 --> 00:07:00,130 Ahora probaré esto rápidamente con un libro, ingrese la imagen que está aquí y un precio aquí y la descripción del libro 80 00:07:00,160 --> 00:07:02,000 de prueba aquí. 81 00:07:02,220 --> 00:07:09,190 Y con eso puedo enviar esto y esto generalmente funciona aquí es nuestro libro. 82 00:07:09,230 --> 00:07:15,050 Ahora haga clic en editar cargamos esta pantalla de edición con los datos del libro para que todo se vea bien y 83 00:07:17,480 --> 00:07:19,300 si elimino Bueno, eso no funciona. 84 00:07:19,310 --> 00:07:20,760 Me sale un error aquí. 85 00:07:20,780 --> 00:07:25,430 Tendremos que investigar eso, pero al menos ahora funciona correctamente cuando se trata de los padres. 86 00:07:25,700 --> 00:07:32,840 Sin embargo, mencioné que hay una cosa que podemos mejorar sobre los padres groseros si tenemos un caso como este aquí con 87 00:07:32,840 --> 00:07:39,110 la función de envío donde abusamos de los padres para obtener datos del cuerpo del componente para nuestras opciones 88 00:07:39,110 --> 00:07:44,930 de navegación porque con la navegación de reacción 5 ahora tenemos Una mejor manera de lograr esto.