2017-08-30 6 views
2

Ich verwende den Angular 4 Router mit Resolver.Angular 4 Resolve manuell oder Daten aktualisieren

Mein Beispiel ist ziemlich einfach, ich habe ein Projekt /projects/:id und dann einige Kinder:

  • /projects/:id/info
  • /projects/:id/edit
  • /projects/:id/rooms

Wenn der Resolver muss ich nur bekommen mein Projekt von den Kindern so:

(<ActivatedRoute>this.route).parent.data.subscribe((data) => { 
    this.project = data.project 
}); 

Aber wenn ich mein Projekt bearbeiten, z. B. Räume hinzufügen oder entfernen, wird es nicht aktualisiert. Also muss ich einen Weg finden, den Resolver manuell aufzurufen oder die Daten zu aktualisieren. Für jetzt mache ich eine window.location.reload(); und es wird nicht wirklich geschätzt.

Antwort

0

Wenn Sie Daten auflösen, geben Sie einfach eine Observable ab ("hot observable" als Wert), anstatt den Wert direkt zu emittieren.

Verwandte Themen