我们在我们的项目中使用了typeorm,并且拥有这样的实体:
@Entity({ name: 'contacts', database: Schemas.interfax75 })
export class OutgoingLog {
@PrimaryGeneratedColumn({ name: 'TransactionID' })
transactionId: number;
@Column({ name: 'SubmitTime', type: 'datetime', default: '0000-00-00 00:00:00' })
submitTime: Date;
// more properties here
}我想要获取注释的name属性。因此,知道属性名transactionId后,我希望获得字符串TransactionID。可以用typescript来做吗?
我知道有reflect-metadata包,但它的文档非常糟糕,我真的不能理解是否可以使用它。
这就是生成的js代码。
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
//...
__decorate([
typeorm_1.PrimaryGeneratedColumn({ name: 'TransactionID' }),
__metadata("design:type", Number)
], OutgoingLog.prototype, "transactionId", void 0);发布于 2020-06-22 23:34:02
您可以简单地使用TypeORM接口
getConnection()
.getMetadata(OutgoingLog)
.ownColumns
.map(column => {
// Do what you want with column
// For example, log it into console
// And check all fields — `properyName` and others
console.log(column)
})https://stackoverflow.com/questions/62517854
复制相似问题