我有一个班级,我已经创建了一个display
装饰器,并且我想获取某个属性的任何装饰器。我尝试了几次尝试,但没有运气。这是课程:
export class DisplayParams {
name: string;
}
function display(displayParams?: DisplayParams) {
return (target: any, key: string) => {
console.log('diplayParam', key);
};
}
export class Contact {
@display({ name: 'First Name' })
firstName: string;
}
我尝试了使用Reflect.getMetadata
的不同方法,但没有任何结果。我已经尝试过如下操作:
var target: Contact = { firstName: 'Test'};
var propertyKey ='firstName';
console.log(Reflect.getMetadata("design:type", target, propertyKey));
console.log(Reflect.getMetadata("design:paramtypes", target, propertyKey));
console.log(Reflect.getMetadata("design:returntype", target, propertyKey));
所有返回未定义,我应该怎么做?