Есть ли способ обеспечить проверку времени существования компилятора в Typescript?то есть.У меня есть следующий класс:
@autoinject
export abstract class HttpServiceBase {
constructor(private httpClient: HttpClient){}
}
, а затем у меня есть следующий класс:
export class UserService extends HttpServiceBase{
public async getAllUsers():Promise<any>{
... this function is not important here
}
}
@autoinject
export class NewUserViewModel {
public model:any;
constructor(private service:UserService){}
public async activate(){
return this.service.getAllUsers()
.then(result=> this.model = result);
}
}
Проблема в том, что базовый абстрактный класс имеет конструктор с 1 параметром, но подклассне имеет конструктора.Поэтому я получаю ошибки во время выполнения, когда Aurelia пытается создать UserService из контейнера DI.Я не нашел способа сказать компилятору выдавать ошибку, когда я забыл написать конструктор подкласса, если у суперкласса есть требуемые параметры в своем собственном.
Обновление : этот сценарий работает без проблем:
@autoinject
export class UserService extends HttpServiceBase{
constructor(httpClient:HttpClient){
super(httpClient);
}
public async getAllUsers():Promise<any>{
... this function is not important here
}
}
Но у меня есть много подобных сервисов и много членов команды.Так что есть много точек, где компилятор должен уведомить о сокрытии базового конструктора.