Stack Overflow em Português Asked by Murilo Fechio on December 2, 2021
Quero adicionar uma propriedade user para o request do Express. Para isso criei um arquivo chamado express.d.ts com o seguinte conteúdo:
declare namespace Express {
export interface Request {
user: {
id: string;
}
}
}
Ao tentar acessar no meu middleware a propriedade request.user criada, tenho o seguinte erro:
- error TS2339: Property 'user' does not exist on type 'Request<ParamsDictionary, any, any, ParsedQs>'.
Código da classe className.ts do middleware:
export default function methodName(request: Request, response: Response, next: NextFunction): void{
request.user = {
id: 10,
}
}
Estrutura das pastas:
src
@types
express.d.ts
middlewares
className.ts
Add essa linha no seu scripts package.json
"dev:server": "ts-node-dev --inspect --transpile-only --ignore-watch node_modules src/server.ts",
Answered by Mateus Carbajal on December 2, 2021
Tenta fazer assim no arquivo de declaração do express que você criou:
declare namespace Express { export interface Request { user?: { id: string; } } }
colocando como opcional
Answered by Clailson Jorge on December 2, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP