2017-07-03 1 views
-5

Kann nicht Eigentum 'Ergebnis' undefinierterAngular JS -> kann nicht gelesen Eigenschaft

Angular Funktion lesen:

.controller('forgotCtrl', function($scope,$http,$ionicPopup,$state,$ionicHistory) { 
    $scope.forgot=function(data1){ 
     var link1 = 'http://localhost/uxo_data/forgot.php'; 
     var json10 = {n : data1.mobile }; 
     $http.post(link1, { data1: json10 }) 
     .then(function (res){ 
      $scope.response = res.data1.result; 
      console.log(res.data1.result); 
      if($scope.response.created=="1"){ 
       $scope.title="Password Reset!"; 
       $scope.template="Please Check your associated Email Account!"; 

       //no back option 
       $ionicHistory.nextViewOptions({ 
        disableAnimate: true, 
        disableBack: true 
       }); 
       $state.go('login', {}, {location: "replace", reload: true}); 

      }else if($scope.response.exists=="1"){ 
       $scope.title="Failed"; 
       $scope.template="Number you entered doesn't exist"; 

      }else{ 
       $scope.title="Failed"; 
       $scope.template="Contact Our Technical Team"; 
      } 

      var alertPopup = $ionicPopup.alert({ 
        title: $scope.title, 
        template: $scope.template 
      }); 


     }); 

    } 
}) 

Output i erhalten aus Rest-api ist:

{"result":{"created": "0" , "exists": "1" }} 

Ich checkte im Web-Debugging-Tool, PHP-Code funktioniert gut und geben über die Antwort als Ausgabe.

+3

Try für console.log (res.data); –

+0

Es gibt nur zwei Teile in Ihrem Code, in denen Sie versuchen, auf eine Eigenschaft * "result" * zuzugreifen, und beide verweisen auf dasselbe. Ihre allererste Überprüfung hätte sein sollen, dass das Objekt, auf das Sie zugreifen wollten, korrekt referenziert wurde. 'res.data1' ist undefiniert, also warum denkst du das könnte sein? – Phil

Antwort

1

Änderung dieser Linie von

$scope.response = res.data1.result; 

zu

$scope.response = res.data.result; 

Die Antwort wird ein Datenobjekt, die Sie falsch zugreifen.

1
console.log(res.data1.result); // => data1 is undefined 

try unten Code:

console.log(res.data.result); 
Verwandte Themen