$Status, $stateParams, immer Undefinierte Objekt
Ich bin immer unerwartete Ergebnisse aus den beiden Methoden.
Habe ich meine $Status configed
$stateProvider
.state('status', {
url: "/status/:payment",
controller: 'QuestCtrl',
templateUrl: "index.html"
});
Und auf dem Controller ich habe:
angular.module('quest').controller('QuestCtrl',function($scope,$stateParams,$state){
console.log($stateParams.payment); //undefined
console.log($state); //Object {params: Object, current: Object, $current: extend, transition: null}
}
Ich bereits verwendet $stateParams in anderen Projekten und es hat geklappt aber jetzt kann ich nicht herausfinden, was Los ist hier..
- schauen Sie an, um Sie vergaß $http 😛 ['$scope','$http', '$stateParams','$Staat',function($scope,$http,$stateParams,$Status)
- Was ist die URL in der Adressleiste des Browsers?
- Jungs, es ist so peinlich, aber ich habe versucht, fügen Sie $stateParams nur um eine zusätzliche params, so dass ich vergaß hinzuzufügen, <ui-view - > zu meinem html. So jetzt bin ich mit der $Ort statt - einfach. Sorry Jungs.. und danke für die Antworten @jb-nizet, @ squiroid, @ thomas-weglinski
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Namen des services nicht übereinstimmen mit den Variablen.
Also $http ist eigentlich der $stateParams-service, $stateParams ist eigentlich der $state service, und $Status ist undefiniert.
Mein Rat: aufhören mit diesem array-notation, die clutters den code, und ist eine häufige Quelle von Fehlern. Verwenden Sie stattdessen ng-annotate als Teil des build-Verfahren, die machen es richtig, für Sie.
Wie ich schon sagte, über Sie vergessen haben, injizieren $http-service
Also Ihre Parameter mismatch und es stellt sich heraus, Sie erhalten $Staat $stateparms und $Status leer ist.
Und $http halten, $Status 😛
Hoffe es hilft 🙂
Mit dem ng-annotate-Bibliothek, der controller kann auch initiiert werden, wie diese:
In diesem Fall werden Sie bei der Vermeidung von Problemen mit der injizierten Objekte bestellen. Suchen Sie: https://github.com/olov/ng-annotate
Wenn Sie Ihre Anwendung mit Grunt, Verwendung:
grunt-ng-annotate
Paket.Call 'ngInject'
Konstruktor($scope, $reaktive, $stateParams, $Status, $sce) {
'ngInject'
Fehlenden parameter in routes.js
Mein Beispiel:
Ohne diese Parameter leitet die $stateParams.yourParam immer gibt Sie undefined zurück.