嗨,我有像
这样的服务async
我可以创建一个扩展服务的类吗? e.g。
@Injectable()
export class ParentService{
constructor(private http:Http){}
get(){this.http.get(...)}
}
并使用 new 关键字在
之类的组件内实例化export class SomeClass extends ParentService {
public name:string;
constructor(name:string, private http:Http){
super(http);
this.name = name;
}
}
我的想法是,对于每个新实例,我可以将字符串作为urlPath传递,并使用该实例从我的服务中调用泛型函数。谢谢!
答案 0 :(得分:1)
如果您希望DI传递构造函数参数,则需要将实例化委托给Angulars DI。
你能做的是
export class Cmp{
instance:any;
constructor(http:Http){
this.instance = new SomeClass('InstanceOne', http);
this.instance.get();
}
}
或者您可以提供一个字符串,并在创建新的@Inject('sometoken')
时使用name
来获取传入的SomeClass
。