2016-04-25 7 views
0

Laden ist habe ich eine Route:Angular2 Routing, wie Fehler zu vermeiden, während Daten

@RouteConfig ([ 
    {path: '/dn/', name: 'Details', component: DetailsComponent} 
]) 

DetailsComponent lädt Daten in der ngOnInit Methode.

Daten werden in der Komponenten-Vorlage mit Konstrukten wie

{{data.prop1.prop2}} 

Aber solange die Daten nicht geladen werden, ich Fehler angezeigt bekommen, weil data.prop1.prop2 noch nicht existiert.

Was ist der bevorzugte Weg in angular2, um dieses Problem zu lösen? Mit

<span *ngIf="data">{{data.prop1.prop2}}</span> 

oder mit AsyncRoute, oder indem Sie die Vorlage dynamisch festlegen?

+0

Am einfachsten wäre es, ' {{data.prop1.prop2}}' für Objekte und '' für Arrays zu verwenden . – xphong

Antwort

1

können Sie den Operator Elvis

{{data?.prop1?.prop2}} 

auf diese Weise verwenden Angular versucht nicht prop1 bis data Wert zu bewerten hat! = null.