import { Injectable , NgZone , ViewContainerRef , ComponentFactoryResolver , Injector , Renderer2 , ElementRef , ApplicationRef } from '@angular/core' ; import { ComponentLoader } from './component-loader.class' ; import { PositioningService } from '../positioning' ; @ Injectable ( ) export class ComponentLoaderFactory { public constructor ( private _componentFactoryResolver , private _ngZone , private _injector , private _posService , private _applicationRef ) { } param _elementRef param _viewContainerRef param _renderer2 returns { ComponentLoader } public createLoader < T > ( _elementRef , _viewContainerRef , _renderer ) { return new ComponentLoader < T > ( _viewContainerRef , _renderer , _elementRef , this . _injector , this . _componentFactoryResolver , this . _ngZone , this . _applicationRef , this . _posService ) ; } }