dazjsx
Version:
参考nestjs,基于KOA2的一款轻量级的后端开发框架
42 lines (41 loc) • 1.35 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.R = void 0;
const __1 = require("..");
class R {
static getMetadata(key, instance, name) {
return Reflect.getMetadata(key, instance, name);
}
static getArrayMetadata(key, instance, name) {
return Reflect.getMetadata(key, instance, name) || [];
}
static getObjectMetadata(key, instance, name) {
return Reflect.getMetadata(key, instance, name) || {};
}
static setMetadata(key, val, target, name) {
return Reflect.defineMetadata(key, val, target, name);
}
static getMethodPrototype(instance) {
const proto = Object.getPrototypeOf(instance);
const propertyNames = Object.getOwnPropertyNames(proto);
const reocrd = [];
let isOk = false;
propertyNames.map((name) => {
isOk = name !== __1.Constant.CT && typeof proto[name] === __1.Constant.FN;
if (isOk) {
reocrd.push({
name,
methodFn: proto[name],
});
}
});
return reocrd;
}
static defineData(source, key, value) {
Object.defineProperty(source || {}, key, {
value,
});
return source;
}
}
exports.R = R;