У меня есть провайдер, которого я хотел бы использовать в качестве переходного процесса вместо одиночного.Я знаю, что могу создать объект вручную, но я все еще хотел бы разрешить зависимости с помощью инжектора зависимостей.
export class HubServiceBase {
private readonly hubAuthorizationQueryParameter = 'authToken';
onCreate = new EventEmitter<any>();
connectionEstablished = new EventEmitter<Boolean>();
connectionExists = false;
private _hubConnection: any;
constructor(public authManager: AuthenticationProvider) {
}
initialize(hubSubRoute: string): void{
const accessToken = this.authManager.getRawAccessToken();
let hubUrl = environment.baseUrl + hubSubRoute;
if (accessToken) {
hubUrl += '?' + this.hubAuthorizationQueryParameter +'=' + accessToken;
}
this._hubConnection = new HubConnectionBuilder()
.withUrl(hubUrl)
.build();
}
//...
}
функцию инициализации можно вызывать из разных служб, и она поддерживает веб-сокет с моим сервером.Одновременно может быть открыто несколько сокетов.
Как получить новый из инжектора зависимости каждый раз, когда страница запрашивает его?