【发布时间】:2019-09-10 00:43:20
【问题描述】:
为什么我们不能在 NestJS 服务中使用装饰器?这是我尝试做的一个示例,但它不起作用。
装饰器:@User()
// user.decorator.ts
import { createParamDecorator } from '@nestjs/common';
export const User = createParamDecorator((data, req): {userId, email} => {
return data ? req.user[data] : req.user;
});
当我将此装饰器调用到服务中时,我收到以下消息:在作为表达式调用时无法解析属性装饰器的签名
// connect.service.ts
import { Injectable, Inject } from '@nestjs/common';
import { User } from '../account/user/user.decorator';
@Injectable()
export class ConnectService {
@User()
userInfo;
}
【问题讨论】: