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

380
Views
Usando Express Mergeparams con TypeScript

Estoy usando Typescript para mi pequeño proyecto y tengo un problema. Estoy anidando mi enrutador pero Typescript no parece reconocer el parámetro principal.

En el archivo "hijo" que tengo

 const childRouter = express.Router({ mergeParams: true }); childRouter.get('/', (req, res) => { const userName = req.params.username; // This causes the error, Property 'username' does not exist on type '{}' });

y luego en el archivo "principal" el código es

 import childRouter from './child'; const parentRouter = express.Router(); parentRouter.use('/:username', childRouter);

No tengo idea de cómo solucionar esto, parece que TypeScript no reconoce que estoy usando el parámetro principal. ¿Algúna idea de cómo arreglar esto?

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Editar: Leí mal la publicación la primera vez.

Los request.params deben ser del siguiente tipo si instaló los tipos correctamente para Express.

 interface ParamsDictionary { [key: string]: string; }

Si necesita forzar el tipo, también puede hacer lo siguiente:

 const username = req.params.username as string
over 4 years ago · Santiago Trujillo Report

0

Un poco de una solución sucia:

 childRouter.get('/', (req, res) => { const { username } = req.params as any; … });
over 4 years ago · Santiago Trujillo 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!