201528Sep

StateMan: Standalone-JavaScript-Router für SPAs

Bei heutigen Webanwendungen handelt es sich oft um solche, die aus einer zentralen Seite bestehen und Inhalte per Ajax nachladen: Single-Page-Applications (SPAs) haben den Vorteil, dass gezielt Daten vom Server geholt werden (häufig in Form von JSON/REST) und nicht die komplette Seite neu geladen werden muss (per Roundtrip). Eine derartige Anwendung benötigt allerdings auch ein Konzept für URL-Pfade, damit Lesezeichen zu entsprechenden Seiten gesetzt werden oder URLs kopiert werden können. Für eine derartige Funktionalität ist etwas Aufwand nötig, da die URLs bestimmten Bereichen der Anwendung zugeordnet werden müssen (Routing) und auch die nativen Vor-/Zurück-Funktionen des Webbrowsers berücksichtigt werden müssen.
AngularJS-Entwickler können hierzu das ui-router-Modul einsetzen. Wer hingegen eine Standalone-Lösung sucht, die an ui-router angelehnt ist, sollte sich StateMan ansehen.

StateMan - A tiny foundation that providing nested state-based routing for complex web applications

Dabei handelt es sich um ein kompaktes Framework, das etliche Routing-Funktionen mitbringt. Das Beispiel zeigt die Bibliothek in Aktion. Mit StateMan lässt sich also die komplette Routing-Logik für eine SPA umsetzen und dabei sind natürlich auch verschachtelte URLs inklusive IDs oder eigenen Parametern möglich. Die Referenz gibt Aufschluss über die Funktionen des Skripts.