无法读取JSON响应Angular JS Ionic

时间:2016-05-29 08:31:12

标签: angularjs json ionic-framework

在Angular sidemenu项目中

.controller('PlaylistsCtrl', function($scope, $http) {
    $scope.basePath = 'http://localhost/iongallery/rest/';

    $http({
        method: 'POST',
        url : $scope.basePath+'ajax_get_data_client.php',
        data : {'operation': 'showMonths'}
    }).then(function success(data){
        $scope.months = data;
        console.log($scope.months[1].years);
    }, function error(data){

    });

当我加载应用2请求生成时,一个没有任何数据{},一个数据{'operation': 'showMonths'}

enter image description here

没有任何数据的请求; t获取andy响应和带数据获取的请求 [{"month":"2","years":"2016"},{"month":"3","years":"2016"},{"month":"4","years":"2016"},{"month":"5","years":"2016"}]

这个json。

但是,虽然无法读取JSON。 提供Eror TypeError: Cannot read property 'years' of undefined

1 个答案:

答案 0 :(得分:2)

$http.then() has another signature

$http({
  method: 'GET',
  url: '/someUrl'
}).then(function successCallback(response) {
    // this callback will be called asynchronously
    // when the response is available
  }, function errorCallback(response) {
    // called asynchronously if an error occurs
    // or server returns response with an error status.
  });
  

响应对象具有以下属性:data - {string | Object} -   响应体用变换函数变换。   status - {number} - 响应的HTTP状态代码。标题 -   {function([headerName])} - 标头getter函数。 config - {Object} -   用于生成请求的配置对象。   statusText - {string} - 响应的HTTP状态文本。所以你需要   改变行

}).then(function success(data){
            $scope.months = data;
            console.log($scope.months[1].years);
        }, function error(data){

进入

}).then(function success(response){
        $scope.months = response.data;
        console.log($scope.months[1].years);
    }, function error(data){