[DURACOM-240] use BehaviorSubject

This commit is contained in:
Giuseppe Digilio
2024-03-17 19:07:09 +01:00
parent 3e30f64e9c
commit 9e6fe526e1
2 changed files with 7 additions and 7 deletions

View File

@@ -1,7 +1,7 @@
import { Injectable } from '@angular/core'; import { Injectable } from '@angular/core';
import { import {
BehaviorSubject,
Observable, Observable,
ReplaySubject,
Subject, Subject,
} from 'rxjs'; } from 'rxjs';
import { environment } from 'src/environments/environment'; import { environment } from 'src/environments/environment';
@@ -42,7 +42,7 @@ export class ClientMathService extends MathService {
constructor() { constructor() {
super(); super();
this.isReady$ = new ReplaySubject<boolean>(1); this.isReady$ = new BehaviorSubject<boolean>(false);
void this.registerMathJaxAsync(this.mathJax) void this.registerMathJaxAsync(this.mathJax)
.then(() => this.isReady$.next(true)) .then(() => this.isReady$.next(true))

View File

@@ -1,7 +1,7 @@
import { Injectable } from '@angular/core'; import { Injectable } from '@angular/core';
import { import {
BehaviorSubject,
Observable, Observable,
ReplaySubject,
Subject, Subject,
} from 'rxjs'; } from 'rxjs';
@@ -15,7 +15,7 @@ import {
}) })
export class ServerMathService extends MathService { export class ServerMathService extends MathService {
protected signal: Subject<boolean>; protected isReady$: Subject<boolean>;
protected mathJaxOptions = {}; protected mathJaxOptions = {};
@@ -31,8 +31,8 @@ export class ServerMathService extends MathService {
constructor() { constructor() {
super(); super();
this.signal = new ReplaySubject<boolean>(1); this.isReady$ = new BehaviorSubject<boolean>(false);
this.signal.next(true); this.isReady$.next(true);
} }
protected async registerMathJaxAsync(config: MathJaxConfig): Promise<any> { protected async registerMathJaxAsync(config: MathJaxConfig): Promise<any> {
@@ -40,7 +40,7 @@ export class ServerMathService extends MathService {
} }
ready(): Observable<boolean> { ready(): Observable<boolean> {
return this.signal; return this.isReady$;
} }
render(element: HTMLElement) { render(element: HTMLElement) {