Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

196
Views
Angular: ¿puede un parámetro de consulta contener un carácter de coma codificado "," en la navegación?

Digamos que tenemos el siguiente caso de uso:

  • Tenemos algunos filtros en la página. En la selección del filtro, debemos agregar el valor del filtro a la URL como un parámetro de consulta (navegando a la misma página usando router.navigate o router.navigateByUrl
  • Valor de ejemplo de un filtro que rompe la funcionalidad: "Value one, comma separated"
  • un filtro también puede contener varios valores separados por comas, por ejemplo, param1=one,two

¿Hay alguna manera de codificar bien la coma de un solo valor, pero manteniendo las comas que separan los múltiples valores? Entonces, el objetivo sería navegar a algo como: param1=value1%2Ccomma%20separated,value2

Llamando a esto:

 this.router .navigate([], { relativeTo: this.route, queryParams: { partner: 'Partner one, comma separated' }, replaceUrl: true, })

realiza la navegación a la siguiente URL: blah.com?partner=Partner%20one,%20comma%20separated

Y llamando a esto:

 this.router .navigate([], { relativeTo: this.route, queryParams: { partner: 'Partner one%2C comma separated,Partner two' }, replaceUrl: true, })

realiza la navegación a la siguiente URL: blah.com?partner=Partner%20one%252C%20comma%20separated,Partner%20two

Mi objetivo es navegar a algo como esto: <current URL>?partner=Partner%20one%2C%20comma%20separated,Partner%20two (sin %25 de codificación doble)

por lo tanto, hay una manera para que nuestro backend sepa qué coma está separando los valores y cuál es parte de un solo valor.

También esto:

 this.router.navigateByUrl(`/my-page?partner=Partner%20one%2Ccomma%20separated`);

navega a blah.com/my-page?partner=Partner%20one,comma%20separated (la coma se decodificó ).

Probé una combinación de decodeURI, encodeURIComponent etc. antes de pasarlo a router.navigate o router.navigateByUrl , pero nada parece funcionar.

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!