controller.ts(8,8):错误 TS2339:扩展 express.Request 时 属性 'user' 在类型 'Request' 上不存在
controller.ts(8,8): error TS2339: Property 'user' does not exist on type 'Request' while extending express.Request
我遇到了以下错误。请帮助我。
controller.ts(8,8): error TS2339: Property 'user' does not exist on type 'Request'.
controller.ts
import * as express from 'express';
class Users{
public showUser(
req: express.Request,
res: express.Response,
next: express.NextFunction
) {
return req.user;
}
}
const users = new Users();
export = {
showUser: users.showUser
}
express.custommerge.d.ts
// Extend the Express interface with declaration merging
import { User } from './api';
declare namespace Express {
export interface Request {
user: User;
}
}
api.ts
export class User {
'userId': string
}
注:
如果我不在 express.custommerge.d.ts 中包含 import { User } from './api';
并添加 any
而不是 User
,则不会出现此错误
如果我在
中进行以下更改,它会起作用
express.custommerge.d.ts
import { User } from './api';
declare namespace Express {
export interface Request {
user: User;
}
}
我遇到了以下错误。请帮助我。
controller.ts(8,8): error TS2339: Property 'user' does not exist on type 'Request'.
controller.ts
import * as express from 'express';
class Users{
public showUser(
req: express.Request,
res: express.Response,
next: express.NextFunction
) {
return req.user;
}
}
const users = new Users();
export = {
showUser: users.showUser
}
express.custommerge.d.ts
// Extend the Express interface with declaration merging
import { User } from './api';
declare namespace Express {
export interface Request {
user: User;
}
}
api.ts
export class User {
'userId': string
}
注:
如果我不在 express.custommerge.d.ts 中包含 import { User } from './api';
并添加 any
而不是 User
如果我在
中进行以下更改,它会起作用express.custommerge.d.ts
import { User } from './api';
declare namespace Express {
export interface Request {
user: User;
}
}