Sie sind hier: Weblog

AngularJS und UI-Router: Routing-Parameter

Foto ,
19.03.2014 18:22:00

Genau, wie das Modul ngRouter unterstützt auch UI-Router den Einsatz von Routing-Parameter. Dazu nimmt der Entwickler Platzhalter, die mit einem Doppelpunkt eingeleitet werden, in den URL der Route auf. Um auf die Werte dieser Parameter zugreifen zu können, injiziert der Entwickler – analog zum Einsatz von ngRouter – den Service $stateParams in den zuständigen Controller.

$stateProvider.state("passagierDetails", {

        url: "/passagierDetails/:pNummer",

        templateUrl: /partials/passagierDetails.html,

        controller: function ($scope, $stateParams) {

            $scope.detail = {};

            $scope.detail.pNummer = $stateParams.pNummer;

            $scope.detail.name = "Max Muster";

        }

    });

Um Routing-Parameter an einen Zustand zu übergeben, sieht der Entwickler einen Link mit dem URL des jeweiligen Zustands vor. Dabei ersetzt er die Platzhalter im URL durch die gewünschten Werte. Alternativ dazu kann er auch die Direktive ui-sref wie folgt verwenden:

ui-sref="flugbuchung.meineBuchungen({pNummer: 4711})"