2016-01-30 1 views
5

Ich möchte die Abfrage String-Werte erhalten. Ich verwende $ location.search(), um diese Werte zu erhalten, aber es sagt, dass $ location.search keine Funktion ist. Ich benutze 1.5 Version von AngularJs.

JS -

var app = angular.module('myApp', []); 
app.config(['$locationProvider', function($locationProvider){ 
    $locationProvider.html5Mode(true); 
}]); 


app.controller('myCtrl',[ '$location','$scope', function($scope, $location){ 
     var searchObject = $location.search(); 
     console.log('searchObject'); 
     console.log(searchObject); 
}]); 

Ich verstehe nicht, was ich im Code bin fehlt.

Antwort

5

Natürlich ist es keine Funktion, denn Sie rufen search Methode auf dem $scope Objekt. Die Reihenfolge der Dienste, die Sie in den Controller injizieren, lautet $location und dann $scope. Also, was Sie in Controller $location genannt haben, ist eigentlich ein $scope. Ordnung ist wichtig.

Richtige Dependency Injection sollte sein:

[ '$location', '$scope', function($location, $scope) { 
+0

vielen Dank – sajalsuraj