在console.log中显示ngResource对象

Display ngResource object in console.log

本文关键字:ngResource 对象 显示 console log      更新时间:2023-09-26

我有一个正在查询pokeapi的应用程序。

我在工厂中使用AngularJS ngResource来访问端点,在我的控制器中,它正在查询数据,视图正在填充。我不能做的一件事是记录返回的实际对象,这样我就可以在控制台中解析它。

控制器

app.controller('pokedexCtrl', function($scope, $http, $timeout, searchCharacter) {
  $scope.search = function() {
    // get pokemon details
    var filteredSearch = $scope.searchCharacter.toLowerCase().replace(/'s+/g, '');
    $scope.characters = [searchCharacter.get({
        value: $scope.searchCharacter
      }, function() {
        console.log('character retrieved' + $scope.characters);
      },
      function(response) {
        if (response.status === 404) {
          alert('we are sorry but we could not find what you are looking for')
        }
      }
    )];
  };
});

工厂

app.factory('searchCharacter', function($resource) {
  return $resource('http://pokeapi.co/api/v1/pokemon/:value', {
    value: '@searchCharacter'
  }, {
    'query': {
      method: 'GET',
      isArray: true
    }
  });
});

我唯一能回到控制台的是:>character retrieved [object Object]

如何在控制台中获取对象树?我所说的的图像

修订控制器

app.controller('pokedexCtrl', function($scope, searchCharacter){
  $scope.search = function(){
// get pokemon details
var filteredSearch = $scope.searchCharacter.toLowerCase().replace(/'s+/g,'');
$scope.characters = [searchCharacter.get({
    value : filteredSearch
  }, function(){},
  function(response){
    if(response.status === 404){
      alert('we are sorry but we could not find what you are looking for')
    }
  }
)];
var pokemonObject = searchCharacter.get({value: filteredSearch}, function(value, responseHeader) {
  console.log('Pokemon Object: ', pokemonObject);
});
};
});

您的控制台日志没有返回对象,因为您使用+ 将其解析为字符串

console.log('character retrieved' + $scope.characters);

如果你想返回一个对象,你需要用逗号分隔

console.log('character retrieved', $scope.characters);