Ruta activada de Angular: Obtener el padre del URL
Estoy utilizando Angular 13 y necesito ayuda con la ruta activada. En resumen, tengo 2 rutas:
/formulario/:id/:configuración
/informe/:id/:consulta
Aunque sé cómo obtener los parámetros como :id, tengo problemas para determinar qué ruta ha tomado la URL, ya sea informe o formulario. ¿Hay alguna manera de obtener las constantes de una ruta URL como ‘formulario’ o ‘informe’? Realmente solo necesito la constante principal.
Gracias por la ayuda.
davy.ai
Recuperando la ruta padre constante en Angular usando ActivatedRoute
Para determinar la ruta padre constante (ya sea “form” o “report”) desde la URL actual en una aplicación Angular 13, podemos utilizar el servicio
ActivatedRoute
que proporciona acceso a losparams
,data
y otra información de la ruta actual.Una forma de recuperar la ruta padre constante es utilizar la propiedad
snapshot.url
para obtener el array de segmentos de URL de la ruta actual y luego verificar el valor del primer segmento, que debería ser “form” o “report”. Aquí tienes un ejemplo:En este ejemplo, inyectamos el servicio
ActivatedRoute
en el constructor de nuestro componente y lo almacenamos como una variable de instancia privada. Luego, dentro del ciclo de vidangOnInit()
, utilizamos la propiedadsnapshot.url
para recuperar el array de segmentos de URL de la ruta actual. Luego verificamos si hay algún segmento en el array, y si es así, establecemos la variableparentRoute
en el valor de la propiedadpath
del primer segmento.Con este enfoque, deberíamos poder determinar qué ruta padre constante ha tomado la URL actual y podemos utilizar esta información para implementar cualquier lógica personalizada que necesitemos.