Javascript 无法从factory AngularJS中的JSON文件中提取数据

Javascript 无法从factory AngularJS中的JSON文件中提取数据,javascript,angularjs,json,html,Javascript,Angularjs,Json,Html,我有一个Json文件,格式如下: json文件的名称为discover.json,路径为json文件/discover.json {"data": [ {"username": "aky123", "name": "ajay"}, {"username": "sky123", "name": "sanjay"} ]} 我的工厂是: var myAppServices=angular.module('myAppServices',['ngResour

我有一个Json文件,格式如下: json文件的名称为discover.json,路径为json文件/discover.json

    {"data": [
{"username": "aky123", 
    "name": "ajay"}, 
    {"username": "sky123",
     "name": "sanjay"}
    ]}
我的工厂是:

var myAppServices=angular.module('myAppServices',['ngResource']);

myAppServices.factory('ProfileData',['$resource', function($resource){
    return $resource('/discover/:username.json', {}, {
        query: {method: 'GET' , params: {username: 'json-files/discover' }, isArray: true }
    });
}]);
App.js:

myApp.config(['$routeProvider',
  function($routeProvider) {
    $routeProvider.
      when('/discover', {
        templateUrl: 'partials/home-page.html',
        controller: 'ProfileListCtrl'
      }).
      when('/discover/:username', {
        templateUrl: 'partials/profile-detail.html',
        controller: 'ProfileDetailCtrl'
      })
在控制器中:

myAppControllers.controller('ProfileListCtrl',['$scope', 'ProfileData', '$timeout', function($scope, ProfileData, $timeout) {
        $scope.profile=ProfileData.query();
    console.log($scope.profile);
}]);

$scope.profile无法从JSON文件中提取数据,我无法理解这里的错误,因此请帮助我。

您没有有效的JSON

有效的json是:

 {
    "data": [{
        "username": "aky123",
        "name": "ajay"
    }, {
        "username": "sky123",
        "name": "sanjay"
    }]
}

这段代码在我的本地主机中工作

//Service.js
myAppServices.factory('ProfileData',['$resource', function($resource){
return $resource('/discover/:username.json', {},{
'query': {method: 'GET',{}, isArray: false }
});
}]);
//Controller.js
var promise = ProfileData.query();
promise.$promise.then(function(response) {
$scope.data = response.data;
});
//view.html
<li ng-repeat="name in data">
    {{name.username}}
</li>      
//Service.js
myAppServices.factory('ProfileData',['$resource',函数($resource){
返回$resource('/discover/:username.json',{}{
'query':{method'GET',{},isArray:false}
});
}]);
//Controller.js
var promise=ProfileData.query();
promise.$promise.then(函数(响应){
$scope.data=response.data;
});
//view.html
  • {{name.username}

  • “json文件的名称是discover.json”如果文件名是
    discover.json
    ,那么为什么要使用
    '/discover/:username.json'
    ?为了补充这一点,在调试任何带有json返回的文件时,请将json放入以进行快速冒烟测试。@Mike88我更正了json格式,但仍然无法提取数据。我认为service.js中有一些错误,如果您能在该部分帮助我,那就太好了。:)