đź’ˇHinweise zu Kapitel 3
Das Vorgehen wie eine Komponente erstellt wird und was die einzelnen Referenzierungen bedeuten kennst du bereits.
Input()
Du hast die Möglichkeit Daten in eine Komponente hineinzugeben, dazu muss zu erst im *.ts File der Child Komponente ein Input
deklariert werden. Dies machst du folgendermassen:
Nun kannst du in der Parent Komponente die Child Komponente aufrufen und notwendige Inputs gleich mit hineingeben.
Input Variablen - Non-null Assertion Operator
Wie unter der Rubrik "Tipps & Tricks" erklärt gibt es die Möglichkeit den non-null assertion operator
bei Komponenten zu verwenden. In diesem Beispiel deklarieren wir im @Component
unter selector
in den eckigen Klammern [title]
. Somit wird bei der Verwendung der Komponente direkt ein Fehler ausgegeben, sofern kein Wert fĂĽr title
mitgegeben wurde. Dadurch kann !
ohne Bedenken verwendet werden.
Verwendung der Komponente ohne der Mitgabe von title wird nicht als eine bekannte Komponente erkannt:
Verwendung der Komponente mit der Mitgabe von title wird als eine bekannte Komponente erkannt:
Verwendung von input Signal
input Signal
Seit Angular 17 werden offiziell Signals
unterstĂĽtzt, wodurch die reaktive Programmierung und das State Management in Angular-Anwendungen vereinfacht und verbessert wurden. Offiziell ist die Deklaration @Input
noch unterstĂĽtzt, jedoch wird diese Notation irgendwann deprecated.
Folgendermassen kannst du Signal verwenden um einer Childkomponente Daten zu ĂĽbergeben:
Den Inhalt eines Signals kannst du durch die Verwendung von Klammern erhalten, siehe Codeausschnitt unterhalb.
Durch die lokale Variable hero
, die in diesem Beispiel durch as hero
erzeugt wird, brauchen wir den Wert des Signals nicht ständig mit Klammern abzurufen.
Die Ăśbergabe der Variable bleibt weiterhin 1:1 gleich, wie wir es bereits vorher angesehen haben.
Mit der Nutzung von Signals bereitest du dich auf eine bewärte Technik vor, welche in vielen Frontend Frameworks verwendet wird.
Input erzwingen
Im oberen Kapitel haben wir gelernt wie durch die Verwendung von "Non-null Assertion Operator" der Input
von Daten erzwungen werden kann. Seit der Verwendung von Signals kann dies erheblich vereinfacht werden.
Dies erzwingt die aufrufende Parent Komponente den notwendigen Input
mitzugeben.
Last updated