Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

AngularJS Grundkurs

Ereignisse

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Ein Routing kann durch die Verwendung von Ereignissen überwacht werden. Dadurch werden Informationen zu Änderungen, Fehler sowie der erfolgreiche Abschluss eines Routings ausgegeben.
04:48

Transkript

Mit AngularJS seid Ihr natürlich auch in der Lage Routing mittels Ereignissen zu überwachen. Bedeutet nichts anderes, als dass Ihr Informationen darüber bekommen könnt, wann ein Routing sich gerade ändert, wann es erfolgreich abgeschlossen wurde oder auch natürlich wann es eventuell zu Fehlern gekommen ist. Um das Ganze zu machen, muss ich Ereignisse auf einer sehr flachen Ebene registrieren, also auf einem sehr flachen Scope und das ist dann quasi der rootScope, denn das Routing selber ist auch sehr applikationsnahe. Das heißt, es ist nicht in einem View Controller drinnen oder ähnliches. Muss also dementsprechend direkt im rootScope initialisiert werden, wo ich dann darauf hören kann. Im Grund ist da aber auch dann keine Magie mehr dahinter. Wenn wir uns also einfach mal im MainModule selber das rootScope hier anschauen, können wir mit der Anweisung on auf dem rootScope Ereignisse registrieren und binden. Das, was ich jetzt hier binden möchte, ist das Ereignis ChangeStart und das Ereignis ChangeStart, das ich hier als Template angelegt habe, macht nichts anderes, als dass es im rootScope selber sich an routeChangeStart bindet, ein Callback darauf aufruft, das die Information darüber gibt, welches die nächste Route sein wird und welches die aktuelle Route ist und dies lasse ich mir mit diversen Informationen hier ausgeben. Wenn ich also das Ganze hier speichere und nach einem Cachelöschen einfach aktiviere, können wir hier wunderbar erkennen, dass diese Informationen an der Stelle ausgelagert wurden. Das heißt, ich bekomme hier die Information, dass das routeChangeStart ausgeführt wurde. Als nächstes bekomme ich die Information darüber, was die nächste Route ist, die angesprochen wird, und die aktuelle Route, die angesprochen wird, und würden dann entsprechend hier auch wunderbar Detailinformationen darüber dann noch finden können in den Objekt um zu schauen, wo es dann hinführt. Im konkreten Fall ist es so, dass wir hier mit dem Parameter saban in der location dafür sorgen, dass wir hier die welcome view, die home view ansprechen. Analog kann ich natürlich dann auch noch zusätzlich ein weiteres Ereignis registrieren, das mir auch Bescheid gibt, ob das Ganze erfolgreich abgeschlossen werden konnte. Auch dafür habe ich ein Template vorbereitet. Das Ereignis, an das ich mich dann hängen muss, ist in diesem Falle routeChangeSuccess. Das routeChangeSuccess sorgt dann an dieser Stelle dafür, dass ich die Information darüber bekomme, was jetzt die aktuelle Route ist, was die vorherige Route war und mit welchem Event das Ganze ausgeführt wurde und ich habe das Ganze hier mit sehr vielen logs bereichert, damit wir das Ganze dann auch antesten können. Wenn wir das hier öffnen und einfach hin- und herklicken, werden wir dann an dieser Stelle wunderbar erkennen, dass tatsächlich immer erst das ChangeStart ausgeführt wird. Anschließend bekomme ich hier das Success. In dem Success kommt das eigentliche Event, das mir Informationen darüber gibt, wie das Ereignis stattgefunden hat und natürlich dann auch hier die Information darüber, von wo man kommt und wohin man dann schlussendlich auch geht und wohin man dann entsprechend geführt wurde. Das ist wirklich eine sehr interessante Geschichte, die ich hier habe, denn ich kann wirklich darauf perfekt reagieren und kann darauf agieren, wenn ein Routenwechsel quasi dann in dem Moment stattgefunden hat. Als weitere Ereignisse, an die ich mich dranhängen kann, gibt es natürlich dann auch noch die Möglichkeit mit dem Ereignis ChangeError darauf zu reagieren, wenn entsprechend das Routing nicht funktioniert hat. Dann bekomme ich die Information über die aktuelle vorherige Route und der Grund, warum das Ganze abgelehnt worden ist. Wenn ich zum Beispiel über Suchindizes etwas machen will, also auf einer Suchseite was machen möchte, dann ist es so, dass der Paramater dann auch in der Suche übergeben wird in einem Routing und das kann dann dazu führen, dass ich ein Update habe, ohne dass ich einen tatsächlichen Routenwechsel habe. Dann kann ich einfach das routeUpdate an dieser Stelle registrieren bzw. kann mich an das routeUpdate hängen, um Informationen dafür zu bekommen. Damit das Ganze aber auch funktionieren kann, muss ich in der Route dann selber oder bei der Definition der Route darauf acht geben, dass ich mit dem Parameter reloadOnSearch entsprechend mit dem Wert false arbeite, damit ich dann diese Werte auch entsprechend entgegenbekommen kann. In diesem Video haben wir gemeinsam gelernt, welche Möglichkeiten es gibt, Ereignisse auf das Routing zu registrieren.

AngularJS Grundkurs

Arbeiten Sie sich in AngularJS, einem JavaScript-Framework von Google, ein und sehen Sie, wie Sie mit MVC-Design-Pattern und Dependency Injection im HTML-Umfeld arbeiten können.

3 Std. 43 min (44 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!