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

180
Views
Pasar parámetro de consulta a api en Angular

Tengo un componente secundario, en el que, después de presionar el botón, pasa un campo de formulario a un componente principal. Tengo que pasar estos campos como parámetros de consulta a una API GET /valuation/ que requiere más o menos 20 parámetros opcionales, en los que el nombre difiere de los campos de entrada.

Creé un objeto temporal res dentro de la función padre accept en el que itero el campo. Todavía no puedo entender cómo pasar este parámetro dentro del objeto res , usando múltiples if es código sucio.

por ejemplo Función en componente padre

 accept(form:any){ const req: any = {}; if(form.name) req.user = form.name if(form.address) req.clusterAddress = form.address ... and so on x 20 times this.requestService.getRequest(req).subscribe( (response) => { this.getRequest(response); }, (error) => { console.error(error); } }

Como puede ver, esta no es una opción viable, ¿qué puedo usar para tomar dinámicamente los nombres de los parámetros de consulta?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Puede usar un mapa para almacenar información sobre qué propiedad del formulario se asigna a qué propiedad en su objeto res y luego iterar a través de las claves, verificar la presencia del valor y asignar:

 const formToResMap: { [key: string]: string } = { name: 'name', address: 'clusterAddress', // ... }; accept(form: any) { const req = Object.keys(formToResMap).reduce((acc, key) => { if (form[key]) { acc[formToResMap[key]] = form[key]; } return acc; }, {}); console.log(req); }
about 4 years ago · Juan Pablo Isaza Report
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!