¿Hay alguna forma automatizada de obtener TODAS las cadenas de consulta en la barra de direcciones sin saber cuáles son los nombres?
Por ejemplo, quiero obtener todo lo siguiente:
reports?api=Report1&from=&to=&agentId=2&status=1&fixtureId=3&gradeId=4He echado un vistazo por todas partes, pero solo puedo ver ejemplos en los que solo puedes obtener si conoces el nombre.
No estoy seguro de si la respuesta debería estar relacionada de alguna manera con angular, pero una solución simple sería:
location.search : obtiene una cadena de consulta con todos los parámetros
https://www.npmjs.com/package/query-string : buen paquete que convierte queryString en objeto params para su conveniencia.
Importar ActivatedRoute
import { ActivatedRoute } from "@angular/router";
E inicializar en el constructor
constructor(private activatedRoute: ActivatedRoute) { }
Luego use este código a continuación para obtener la cadena de consulta
this.activatedRoute.params.subscribe(params => { let from = params['from']; }); este this.activatedRoute.params tiene todas las cadenas de consulta. pero si desea obtener el valor, entonces debe suscribirse. u obtén la URL completa y necesitas usar split(); la URL para obtener cadenas de consulta.