AngularJS $http返回的數據類型


AngularJS 1.6.4 調用$http服務,是如下樣式:

$http.get('/someUrl', config).then(successCallback, errorCallback);

 

項目中代碼:

angular.module("myApp").controller("mainCtrl",["$http","$scope",function($http,$scope){
	$http.get("data/positionList.json").then(function(resp){
		$scope.lists=resp;
		console.log($scope.lists);
	},function(){

	});
}]);

一直在糾結怎么lists就是get不到正確的數據,在頁面中展示的內容很奇怪。 后來在控制台打印出來結果信息才發現:

請求結果resp的是包含請求數據,狀態碼,回應頭信息,請求字符碼的對象。在控制台結果如下:

Object { data: Array[4], status: 200, headers: wd/<(), config: Object, statusText: "OK" }

展開如下:

 

所以要獲取數據,應該獲取對象中的data屬性,使用resp.data:

angular.module("myApp").controller("mainCtrl",["$http","$scope",function($http,$scope){
    $http.get("data/positionList.json").then(function(resp){
        $scope.lists=resp.data;
        console.log($scope.lists);
    },function(){

    });
}]);

這次獲取的對象才是數據:

Array [ Object, Object, Object, Object ]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM