Читать книгу Angular - Ferdinand Malcher - Страница 139

Der Safe-Navigation-Operator ?

Оглавление

Stellen wir uns vor, dass wir die Felder eines Objekts in unserem Template anzeigen möchten. Wenn das Objekt allerdings undefined oder null ist, erhalten wir einen Fehler zur Laufzeit der Anwendung, weil es nicht möglich ist, auf eine Eigenschaft eines nicht vorhandenen Objekts zuzugreifen.

An dieser Stelle kann der Safe-Navigation-Operator helfen: Er überprüft, ob das angefragte Objekt vorhanden ist oder nicht. Falls nicht, wird der Ausdruck zum Binden der Daten gar nicht erst ausgewertet.

<p>{{ person?.hobbies }}</p>

Existiert das Objekt person, werden die Hobbys ausgegeben – es gibt aber keinen Fehler, wenn das Objekt undefined ist.

Operator sparsam verwenden

Aber Achtung: Bitte benutzen Sie diesen Operator sparsam. Eine bessere Praxis ist es, fehlende Objekteigenschaften mit der Strukturdirektive ngIf abzufangen (siehe Seite 84) und den kompletten Container erst dann anzuzeigen, wenn alle Daten vollständig sind. Ein weiterer Ansatz zur Lösung ist, die Propertys immer mit Standardwerten zu belegen. Hat ein Property immer einen Wert, muss auch nicht gegen undefined geprüft werden.

Angular

Подняться наверх