naily
Version:
写了一个没有模块系统的 Minimal Nest.js 写着玩的~
33 lines • 1.14 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.UseFilter = exports.Catch = void 0;
require("reflect-metadata");
const main_1 = require("../main");
const http_decorator_1 = require("./http.decorator");
const Catch = (exception) => {
return (target) => {
Reflect.defineMetadata("catch_filter", exception, target);
};
};
exports.Catch = Catch;
const UseFilter = (filter) => {
return (target, methodName, desc) => {
const data = Reflect.getMetadata("catch_filter", filter);
if (!data) {
Reflect.defineMetadata(http_decorator_1.HTTP_KEY.UnknownErrorFilter, {
filter: new filter(),
fn: desc.value,
parameter: data,
}, desc.value);
}
else if (data instanceof main_1.HttpException) {
Reflect.defineMetadata(http_decorator_1.HTTP_KEY.ExceptionFilter, {
filter: new filter(),
fn: desc.value,
parameter: data,
}, desc.value);
}
};
};
exports.UseFilter = UseFilter;
//# sourceMappingURL=errors.decorator.js.map