使用AngularJS访问和显示JSON对象

时间:2017-05-03 04:45:15

标签: javascript angularjs json

我正在尝试使用AngularJS访问JSON中的对象,并显示值。我在JSON中创建数组时已经这样做了,但这次我想展示一个带对象的例子。这是我的代码:

我的JSON文件

{ "user": {
"Name":"Ben", 
"City":"New York"}}

我的角色应用

var app = angular.module('myApp', []);

    app.controller('jsonObjectExample', function($scope, $http) {
      $http.get("jsonobject.json").then(function (response) {
          $scope.myData = response.data.user;
      });
    });

我的HTML

<body>
    <div ng-app="myApp" ng-controller="jsonObjectExample"> 
      <ul>
        <li ng-repeat="x in myData">
          {{ x.Name + ', ' + x.City }}
        </li>
      </ul>
    </div>
  </body>

以下是plunker上这些文件的链接:https://plnkr.co/edit/uBRf99AjYH9zX0WuHsW3?p=preview

有人可以解释我哪里出错吗?感谢。

2 个答案:

答案 0 :(得分:1)

删除ng-repeat。 myData是对象,而不是数组,因此无需使用ng-repeat

  <body>
    <div ng-app="myApp" ng-controller="jsonObjectExample"> 
      <ul>
        <li >
          {{ myData.Name + ', ' + myData.City }}
        </li>
      </ul>
    </div>
  </body>

Demo

答案 1 :(得分:1)

如果你正在使用ng-repeat,请确保你正在解析的json应该给出一些数组值。

你可以纠正你的json:

{ "user": [{
"Name":"Ben", 
"City":"New York"}]}

其他代码工作正常。请检查this