11

Ich lerne gerade AngularJS & Ionic durch Erstellen einer einfachen Podcast-App. Ich versuche routeParams zu verwenden, um die "itemId" zu bekommen, aber ich erhalte den folgenden Fehler:

Error: [$injector:unpr] Unknown provider: $routeParamsProvider <- $routeParams <- DetailsController 
 
http://errors.angularjs.org/1.4.3/$injector/unpr?p0=%24routeParamsProvider%20%3C-%20%24routeParams%20%3C-%20DetailsController 
 
minErr/

Nun ist dies, wie ich die "itemId" pass

.state('ted', { 
 
    url: '/ted/:itemId', 
 
    templateUrl: 'templates/ted-talks.html', 
 
    controller: 'DetailsController' 
 
    })

und hier ist mein Controller:

starter.controller("DetailsController", ["$scope", "$routeParams", "$http", function ($scope, $routeParams, $http) { 
 
    $http.get('http://api.npr.org/query?id=57&apiKey={I've taken the ID off}) 
 
    .success(function(data, status, headers, config){ 
 
    var x2js = new X2JS(); 
 
    var jsonOutput = x2js.xml_str2json(data); 
 
    console.log(jsonOutput); 
 

 
    $scope.stories = jsonOutput.nprml.list.story; 
 
     
 
    if($routeParams.itemId) { 
 
     console.log('Single page id' + $routeParams.itemId); 
 
    } 
 

 

 
    }) 
 
    .error(function(data, status, headers, config){ 
 
    alert('There is a problem'); 
 
    }) 
 
}]);

Irgendwelche Ideen, was die Ursachen dieser Fehler? Ich glaube, dass die RouteParams bereits im ionischen Rahmen enthalten ist, da die von ihnen bereitgestellten Demos funktionieren, aber ich weiß nicht, wie.

Jede Hilfe ist sehr appreceated :)

Antwort

27

Wie Sie Angular-ui-router verwenden Sie $stateParams Abhängigkeit statt $routeParams verwenden sollten, die für ui-router (Angular ui-Router $stateProvider)

if($stateParams.itemId) { 
    console.log('Single page id' + $stateParams.itemId); 
} 

$routeParams is available there for ngRoute module(AngularJS routing $routerProvider)

verwenden sollen
+1

Sie haben keine Ahnung, wie lange ich mich darüber drüber geschlagen habe. Vielen Dank! Ich versuchte, Params in meine Steuerung zu übergeben und nichts funktionierte, haha ​​.... – dannio

+0

@dannio Freut mich zu wissen, dass ich geholfen habe. Vielen Dank :) –