Javascript AngularJSON数据读取

Javascript AngularJSON数据读取,javascript,angularjs,json,Javascript,Angularjs,Json,我试图从url读取json数据,但它不起作用 (如果chrome不工作,请在firefox中打开它) 这是我的javascript代码: $scope.displayA = function() { $http.get('url').then(function(response){ $scope.ninjass = response.data; }); }; 我试图以ng repeat格式显示它,但没有显示任何内容 ng重复代码 <table>

我试图从url读取json数据,但它不起作用

(如果chrome不工作,请在firefox中打开它)

这是我的javascript代码:

$scope.displayA = function() {
  $http.get('url').then(function(response){
    $scope.ninjass = response.data;
  });
};
我试图以ng repeat格式显示它,但没有显示任何内容

ng重复代码

    <table>
      <!--  <th ng-repeat="ninja in ninjass">
             {{ ninja.id }}
        </th> -->
        <tbody>
            <tr ng-repeat="ninja in ninjass">
                <td>{{ ninja.name }}</td>
                <td>{{ ninja.description }}</td>
              <!--  <td>
                  {{ ninja.NAME }}
                </td>
                <td>{{ ninja.NAME }}</td> -->
            </tr>
        </tbody>
    </table>

{{ninja.name}
{{ninja.description}}
错误日志:

未捕获的语法错误:意外标记]

未捕获错误:[$injector:moduler]

试试这个

$http({
  method: 'GET',
  url: '/someUrl'
}).then(function successCallback(response) {
  console.log(response.data);
}, function errorCallback(response) {
  console.log(response);
});
您必须用url api替换“/someUrl”。

尝试使用此api

$scope.displayA = function() {  
   $http.get('url').then(function(response){    
         console.log("success :- "+JSON.stringify(response.data));
         $scope.ninjass = response.data.SrchResults;
         console.log("total length :- "+$scope.ninjass.length); 
  }); 
};

您应该定义
$scope.ninjass=[]全局。除非ng由于未定义模型对象而重复抛出错误。请检查下面的代码片段

angular.module(“test”,[]).controller(“testc”,函数($scope,$http){
$scope.ninjas=[];
$http.get('https://developers.onemap.sg/publicapi/themeapi/retrieveTheme?queryName=historicsites&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOjMsInVzZXJfaWQiOjMsImVtYWlsIjoicHVibGljQXBpUm9sZUBzbGEuZ292LnNnIiwiZm9yZXZlciI6ZmFsc2UsImlzcyI6Imh0dHA6XC9cL29tMi5kZmUub25lbWFwLnNnXC9hcGlcL3YyXC91c2VyXC9zZXNzaW9uIiwiaWF0IjoxNTM3ODYwNTIxLCJleHAiOjE1MzgyOTI1MjESIM5IZII6MTUZG2MDUYMSWIANRPIJJ5OWM1NGZLJQ0ZDFKMZEYZTKYMMEZMMEUIFQ.q_MiRnCT_2OWBMFCCPVVSECOTELLWVOJAY5WWZ0XJY')。然后(功能(响应){
$scope.ninjass=response.data.SrchResults;
});
});

{{ninja.NAME}
{{ninja.DESCRIPTION}}

我在您的代码中检测到一些错误。首先,它应该是不带“”的url;您必须在上面声明它。 第二件事$scope.ninjas应该在代码上方。作为全局变量计算。 第三件事是您需要访问get调用中的“SrchResults”属性

$scope.ninjass = response.data.SrchResults; 
总的来说,应该是这样的

var url = //put your url here;
$scope.ninjass = [];
$scope.displayA = function() {
  $http.get(url).then(function(response){
    $scope.ninjass = response.data.SrchResults;
  });

};

控制台中是否显示错误?(按F11键可以看到控制台)您正在尝试从其他域请求URL吗?不,没有..啊,我认为可能是这种情况@Huanfeng如果您从其他域请求任何内容,您应该在代码$http.get('URL')中获得控制台错误,如“Access cross origin…”,“url”应该是一个变量而不是字符串。我现在在控制台上获得了结果,但在显示时没有加载@RameshRajendran,并且在调用Uncaught error时得到错误:[$injector:modulerr]@StanleyAng编辑您的问题并发布错误日志尝试此
$scope.ninjass=response.data.SrchResults;
@StanleyAng请检查我的答案。这是我在下面的答案中提供的:)@RameshRajendran您写了一分钟,所以我在同一时间写作。对不起,没问题:):)