fontcolor_theme
Deepkit App

의존성 주입

모든 커맨드는 의존성 주입 컨테이너에 완전하게 접근할 수 있습니다. 커맨드나 컨트롤러의 생성자에서 의존성을 정의하면 의존성 주입 컨테이너가 이를 해결하려고 시도합니다.

자세한 내용은 의존성 주입 장을 참조하세요.

import { App, cli } from '@deepkit/app';
import { Logger, ConsoleTransport } from '@deepkit/logger';

new App({
    providers: [{provide: Logger, useValue: new Logger([new ConsoleTransport])}],
}).command('test', (logger: Logger) => {
    logger.log('Hello World!');
});
@cli.controller('test', {
    description: 'My super first command'
})
class TestCommand {
    constructor(protected logger: Logger) {
    }

    async execute() {
        this.logger.log('Hello World!');
    }
}

new App({
    providers: [{provide: Logger, useValue: new Logger([new ConsoleTransport]}],
    controllers: [TestCommand]
}).run();

원하는 만큼의 의존성을 정의할 수 있습니다. 의존성 주입 컨테이너가 이를 자동으로 해결합니다.

English中文 (Chinese)한국어 (Korean)日本語 (Japanese)Deutsch (German)