typcript – 角色2:将服务注入课堂

前端之家收集整理的这篇文章主要介绍了typcript – 角色2:将服务注入课堂前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有角度表示形状.我想使用构造函数实例化该类的多个实例.

构造函数接受表示该形状属性的多个参数.

constructor(public center: Point,public radius: number,fillColor: string,fillOpacity: number,strokeColor: string,strokeOpacity: number,zIndex: number)

在我的课堂里,我想使用能够在地图上绘制形状的服务.是否可以将该服务注入到我的类中,仍然使用构造函数的标准方式.

所以我想做一些像下面这样的事情,Angular会自动解决注入的依赖关系.

constructor(public center: GeoPoint,zIndex: number,@Inject(DrawingService) drawingService: DrawingService)
我设法解决了我的问题.

角2提供反射式注射器,允许在构造函数参数之外注入依赖关系.

我所要做的只是从角度进口反射式注射器.

import {ReflectiveInjector} from '@angular/core';

接着:

let injector = ReflectiveInjector.resolveAndCreate([DrawingService]);
this.drawingApi = injector.get(DrawingService);

该类甚至不需要使用@Injectable装饰器进行装饰.唯一的问题是我必须为DrawingService和所有嵌套的依赖关系提供所有的依赖关系,这样很难维护.

原文链接:https://www.f2er.com/angularjs/142631.html

猜你在找的Angularjs相关文章