@midwayjs/web
Version:
Midway Web Framework for Egg.js
68 lines • 3.04 kB
JavaScript
;
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;
};
var __metadata = (this && this.__metadata) || function (k, v) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.EggConfiguration = void 0;
const core_1 = require("@midwayjs/core");
const path_1 = require("path");
let EggConfiguration = class EggConfiguration {
init() {
this.decoratorService.registerParameterHandler(core_1.WEB_ROUTER_PARAM_KEY, options => {
return (0, core_1.extractKoaLikeValue)(options.metadata.type, options.metadata.propertyData, options.originParamType)(options.originArgs[0], options.originArgs[1]);
});
}
async onReady() {
// ps: 本想在这里清理掉egg添加的中间件,但是这里的数组已经只有一个 midway root middleware,其他的 getter 都是 egg 加进去的,但是不会被中间件执行,所以不需要清理
// 去掉为了 egg-socket.io 报错扫进去的 session
this.app.middleware =
Array.isArray(this.app.middleware) && this.app.middleware.length
? this.app.middleware.slice()
: [];
}
async onServerReady() {
// trigger server didReady
if (this.app.messenger) {
this.app.messenger.emit('egg-ready');
}
}
async onStop() {
// TODO flush egg logger and close it
}
};
__decorate([
(0, core_1.Inject)(),
__metadata("design:type", Object)
], EggConfiguration.prototype, "baseDir", void 0);
__decorate([
(0, core_1.Inject)(),
__metadata("design:type", Object)
], EggConfiguration.prototype, "appDir", void 0);
__decorate([
(0, core_1.App)(),
__metadata("design:type", Object)
], EggConfiguration.prototype, "app", void 0);
__decorate([
(0, core_1.Inject)(),
__metadata("design:type", core_1.MidwayDecoratorService)
], EggConfiguration.prototype, "decoratorService", void 0);
__decorate([
(0, core_1.Init)(),
__metadata("design:type", Function),
__metadata("design:paramtypes", []),
__metadata("design:returntype", void 0)
], EggConfiguration.prototype, "init", null);
EggConfiguration = __decorate([
(0, core_1.Configuration)({
namespace: 'egg',
importConfigs: [(0, path_1.join)(__dirname, 'config')],
})
], EggConfiguration);
exports.EggConfiguration = EggConfiguration;
//# sourceMappingURL=configuration.js.map