AngularTool: Angular mit RxJS reaktiv gestalten?

Beitrag lesen

Als Beispiele hierzu finde ich eigentlich „nur“ TODO-Listen. Was ist aber, wenn ich Formeln und deren Auswertung und Berechnungen mit dieser Technik umsetzen will. Ich habe als Ergebnis eine Fläche aus der Kreisformel:

foo_Area (…) { ( (D*D)-(d+d) ) * Pi }

Die Eingabewerte sind: D: Außendurchmesser, d: Innendurchmesser, s: Wandstärke

Wobei:

D_ds (…) {D= d + 2*s}

d_Ds (…) {d=D – 2*s}

s_Dd (…) {s=(D-d)/s}

In der Eingabemaske kann über einen Radiobutton festgelegt werden, welcher der drei Werte fix ist. Wenn nun z.B. die Wandstärke s fixiert (fixs: boolen) ist und der Aussendurchmesser D geändert wird, werden folgende Prozeduren beginnend im HTML ausgelöst:

<input (keyup)="keyup_D(D)" [(ngModel)]="D">

  1. Je nach dem, ob s fixiert ist oder nicht wird d_Ds() oder s_Dd() aufgerufen, laut folgendem Funktionskörper:

keyup_D(var: number): void {

if (this.fixs == true) { this.d_Ds(); }

this.s_Dd(); // Wird sicherheitshalber wenn nichts fixiert ist immer aufgerufen

this.foo_Area (); // Aufruf der Flächenformel

}

  1. Wenn nun die Eingabewerte D, d, und s korrekt sind, wird endlich die Flächenformel

foo_Area (…) { ( (D*D)-(d+d) ) * Pi } das Ergebnis liefern.

Mein Gedanke ist nun, dass die Funktionen D_ds (…), d_Ds (…), s_Dd (…), foo_Area auf Äderungen lauschen, um dann sich entsprechen ausführen. Dann sorgt ANGULAR dafür, dass die Werte auch in den Input-Feldern erscheinen. Ich habe im Hinterkopf, dass ich eine Anwendung habe wo der Druchmesser in „vielen“ Berechnungen einhergehen und ich den Wert nur 1x ändern möchte. Wie gefragt, wird dadurch das Programm einfacher zu warten oder nicht?

Viele Grüße aus dem Norden

Jürgen