typcript – 角色2:将服务注入课堂
发布时间:2020-12-17 07:38:16 所属栏目:安全 来源:网络整理
导读:我有角度表示形状.我想使用构造函数实例化该类的多个实例. 构造函数接受表示该形状属性的多个参数. constructor(public center: Point,public radius: number,fillColor: string,fillOpacity: number,strokeColor: string,strokeOpacity: number,zIndex: num
我有角度表示形状.我想使用构造函数实例化该类的多个实例.
构造函数接受表示该形状属性的多个参数. 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和所有嵌套的依赖关系提供所有的依赖关系,这样很难维护. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |