TypeScript构造函数中的私有变量声明以引发DI

问题描述 投票:2回答:1

要使用TypeScript在Angular 2中引入依赖注入,我们使用如下代码:

constructor(private _service : SampleService){}

我想知道private关键字在变量声明中的重要性。如果我们不宣布服务是private会影响吗?

谢谢

angularjs typescript dependency-injection
1个回答
4
投票

constructor(private _service : SampleService){}是注入要在组件中使用的服务的推荐方法。

如果你不使用private,你将不得不编写更多的代码行来访问构造函数之外的注入服务,如下所示:

class CompClass {
  private _service: SampleService;
  constructor(service : SampleService) {
    this._service = service;
  }

  doSomething() : void {
    this._service.makeServiceCall();
  }
}
© www.soinside.com 2019 - 2024. All rights reserved.