是否可以手动实例化Http Service而不必将其作为构造函数参数放置?
export class SimpleGridServer {
private http: Http;
constructor(public options: SimpleServerData) {
http = new Http(.../* Argument here */);
}
}
要实例化此类。
var grid = new SimpleGridServer({/* options */});
我希望实例化此类,而不依赖于导入component
的{{1}}的Http服务。
如果可以,这种情况的缺点是什么?
答案 0 :(得分:4)
如果可以,这种情况有什么缺点?
您需要在Angular DI工作流程中使用Angular内容。
你可以直接获得角度注射器的手柄:
import {ReflectiveInjector} from '@angular/core';
import {HTTP_PROVIDERS, Http, Headers} from "@angular/http";
const injector = ReflectiveInjector.resolveAndCreate([HTTP_PROVIDERS]);
const http = injector.get(Http);