nest service 在添加`@Injectable`或者`@InjectRepository`后 OnModuleInit失效,请问为什么?如何解决?

1. 可正常执行 onModuleInit 生命周期

// @Injectable()
export class TestService implements OnModuleInit, OnApplicationBootstrap {
  constructor(
    // @InjectRepository(Detail)
    // private detailRepository: Repository<Detail>,
  ) {}

  async onModuleInit() {
    console.log('onModuleInit: this.detailRepository');

  }

2. 放开Injectable,不可正常执行 onModuleInit 生命周期

@Injectable()
export class TestService implements OnModuleInit, OnApplicationBootstrap {
  constructor(
    // @InjectRepository(Detail)
    // private detailRepository: Repository<Detail>,
  ) {}

  async onModuleInit() {
    console.log('onModuleInit: this.detailRepository');

  }

3. 放开InjectRepository,不可正常执行 onModuleInit 生命周期

// @Injectable()
export class TestService implements OnModuleInit, OnApplicationBootstrap {
  constructor(
    @InjectRepository(Detail)
    private detailRepository: Repository<Detail>,
  ) {}

  async onModuleInit() {
    console.log('onModuleInit: this.detailRepository');

  }
阅读 2.3k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题