Свойство внедрения зависимости не определено в конструкции класса в nestjs - PullRequest
0 голосов
/ 13 февраля 2020

Я новичок в Гнездо Js. @Inject Смущает меня. Так:

код генерируется nestjs@cli

import { Controller, Get, Inject } from '@nestjs/common';
import { AppService } from './app.service';

@Controller()
export class AppController {
    constructor(private readonly appService:AppService) {
        console.log(this.appService)
    }
    @Get()
    getHello(): string {
        return this.appService.getHello();
    }
}

Я получил объект в консоли, все в порядке. Но когда я делаю appService быть @Inject, вот так:

import { Controller, Get, Inject } from '@nestjs/common';
import { AppService } from './app.service';

@Controller()
export class AppController {
    @Inject()
    appService:AppService;
    constructor() {
        console.log(this.appService)
    }
    @Get()
    getHello(): string {
        return this.appService.getHello();
    }
}

Теперь я получил undefined в консоли. Почему?

Кстати, у меня есть проект и я хочу использовать Redis Client в каком-то сервисе. Я бы запустил Redis-клиент в конструкторе с помощью какой-либо службы ввода (например, envService), но теперь я получаю undefined ошибку из-за ошибки службы ввода envService.

Спасибо за ответ.

...