Formelsammlung in Angular effektiv aufbauen!? vorweg ich bin ein Newbi im Angular.
-
Im HTML Teil soll nur das GUI aufgebaut werden.
-
In der dazugehörigen @component soll nur:
a) Festlegen der Varialblen als Properties und über {{Doppelbindung}} mit dem HTML Template verbinden. b) Diese Properties über einen Funktionsaufruf an de Service weitergereicht werden.
3)Im Service soll dann eine der vielen Formel stehen, und innerhalb der gesamten App zur Verfügung stehen.
Der Code im Einzelen:
.... .component.ts:
import { Component, OnInit } from '@angular/core';
import { FunctionsObjectService } from '../../Services/functions-object.service';
import { VariablenObjectService } from '../../Services/variablen-object.service';
@Component({
selector: 'app-home-page',
templateUrl: './home-page.component.html',
styleUrls: ['./home-page.component.css']
})
export class HomePageComponent implements OnInit {
tileOfPage = 'HomePage';
A = new VariablenObjectService('A', 5);
B = new VariablenObjectService('B', 2);
constructor(private Func: FunctionsObjectService) { }
ngOnInit() {}
// Hier hönnen mehrere Eigenschaften manipuliert werden.
half(objX: VariablenObjectService, objY: VariablenObjectService): void {this.Func.half(objX, objY); }
// Hier wird expliziet nur ein Wert geändert.
doppel(objX: VariablenObjectService, objY: VariablenObjectService): void {objX.wert = this.Func.double(objX, objY); }
}
variablen-object.service.ts:
import { Injectable } from '@angular/core';
@Injectable({
providedIn: 'root'
})
export class VariablenObjectService {
public name = 'NA';
public wert = 0;
constructor(VariablenNamen: string, Wert: number) {
this.name = VariablenNamen;
this. wert = Wert; }
}
Functions-object.service.ts:
import { Injectable } from '@angular/core';
import {VariablenObjectService} from './variablen-object.service';
@Injectable({
providedIn: 'root'
})
export class FunctionsObjectService {
constructor() {}
double(x: VariablenObjectService, y?: VariablenObjectService) {return y.wert * 2; }
half(x: VariablenObjectService, y?: VariablenObjectService) {y.wert = y.wert / 2; x.wert = x.wert * 4; }
}
MEINE FRAGE:
ist diese Übergabeart wirklich sinnvoll?
half(objX: VariablenObjectService, objY: VariablenObjectService): void {this.Func.half(objX, objY); } ??