Commit d1c6a13a authored by nanahira's avatar nanahira

start app on application bootstrap

parent 96cc77e7
Pipeline #6055 passed with stages
in 30 seconds
{
"name": "koishi-nestjs",
"version": "1.0.7",
"version": "1.0.8",
"description": "Koishi.js as Nest.js Module",
"main": "dist/index.js",
"typings": "dist/index.d.ts",
......
import { App } from 'koishi';
import { Inject, Injectable, OnModuleInit } from '@nestjs/common';
import {
Inject,
Injectable,
OnApplicationBootstrap,
OnModuleInit,
} from '@nestjs/common';
import { KOISHI_MODULE_OPTIONS } from './koishi.constants';
import { KoishiModuleOptions } from './koishi.interfaces';
@Injectable()
export class KoishiService extends App implements OnModuleInit {
export class KoishiService
extends App
implements OnModuleInit, OnApplicationBootstrap {
constructor(
@Inject(KOISHI_MODULE_OPTIONS)
private koishiModuleOptions: KoishiModuleOptions,
......@@ -12,7 +19,7 @@ export class KoishiService extends App implements OnModuleInit {
super(koishiModuleOptions);
}
async onModuleInit() {
onModuleInit() {
if (this.koishiModuleOptions.usePlugins) {
for (const pluginDesc of this.koishiModuleOptions.usePlugins) {
const ctx = pluginDesc.select
......@@ -21,6 +28,9 @@ export class KoishiService extends App implements OnModuleInit {
ctx.plugin(pluginDesc.plugin, pluginDesc.options);
}
}
}
onApplicationBootstrap() {
return this.start();
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment