Javascript AngularJS多维JSON

Javascript AngularJS多维JSON,javascript,json,angularjs,Javascript,Json,Angularjs,我知道这有点基本,但我正在努力解决这个问题,我有一个返回以下JSON的web服务: [{"search_id":"1","user_id":"1","all_words":"php","not_words":"C++","one_words":"java","created_at":null,"updated_at":null,"search_name":null},{"search_id":"2","user_id":"1","all_words":"second","not_words":"

我知道这有点基本,但我正在努力解决这个问题,我有一个返回以下JSON的web服务:

[{"search_id":"1","user_id":"1","all_words":"php","not_words":"C++","one_words":"java","created_at":null,"updated_at":null,"search_name":null},{"search_id":"2","user_id":"1","all_words":"second","not_words":"not","one_words":"one","created_at":null,"updated_at":null,"search_name":null}]
因此,当它到达角度时,我会得出以下结论:

Array[2]
  0: Object
  $$hashKey: "object:5"
  all_words: "php"
  created_at: null
  not_words: "C++"
  one_words: "java"
  search_id: "1"
  search_name: null
  updated_at: null
  user_id: "1"
  __proto__: 

1: Object
  $$hashKey: "object:6"
  all_words: "second"
  created_at: null
  not_words: "not"
  one_words: "one"
  search_id: "2"
  search_name: null
  updated_at: null
  user_id: "1"
  __proto__: 
这是一个真正的痛苦与工作在ng重复,我将如何着手才能访问它这样(粗略的例子)

明确地说,我从中获取数据的唯一方法是:

<tr ng-repeat="items in data">
    <td ng-repeat="(key, value) in items"> </td>
</tr>
getsearches如下所示,searchList返回searches变量:

getSearches: function() {
    var deferred = $q.defer();
    $http({
        url: 'http://localhost/api/api/tray/search/list'
    }).success(function (data) {
        searches = data;
        console.log(data);
        deferred.resolve(data);
    }).error(function (data) {
        alert('Error');
        deferred.reject(data);
    });
    return deferred.promise;
},
人力资源管理感谢各位的回复,但简单的“数据中的项目”在我的情况下不起作用,我必须在嵌套的ng重复中的项目中使用(键、值),有什么想法吗

顺便说一句,我不确定这是否重要,把HTML放在一个部分中,我使用ui路由器进行导航

更新
非常感谢大家的帮助,看起来这个问题是由包含HTML元素的输入错误引起的,控制器没有正确设置,因为我把ui路由器设置搞砸了。一旦我有机会确保我没有错过任何其他东西,我就会发回。

这似乎很有效。只需确保您的数据与$scope绑定即可。

函数MyCtrl($scope){
$scope.data=[{
“搜索id”:“1”,
“用户id”:“1”,
“所有单词”:“php”,
“非单词”:“C++”,
“一个字”:“java”,
“created_at”:空,
“更新位置”:空,
“搜索名称”:空
}, {
“搜索id”:“2”,
“用户id”:“1”,
“所有单词”:“第二个”,
“不”字:“不”,
“一个字”:“一个”,
“created_at”:空,
“更新位置”:空,
“搜索名称”:空
}]
}

这是数据:{item.one_words}

这似乎工作正常。只需确保您的数据与$scope绑定即可。

函数MyCtrl($scope){
$scope.data=[{
“搜索id”:“1”,
“用户id”:“1”,
“所有单词”:“php”,
“非单词”:“C++”,
“一个字”:“java”,
“created_at”:空,
“更新位置”:空,
“搜索名称”:空
}, {
“搜索id”:“2”,
“用户id”:“1”,
“所有单词”:“第二个”,
“不”字:“不”,
“一个字”:“一个”,
“created_at”:空,
“更新位置”:空,
“搜索名称”:空
}]
}

这是数据:{item.one_words}

这似乎工作正常。只需确保您的数据与$scope绑定即可。

函数MyCtrl($scope){
$scope.data=[{
“搜索id”:“1”,
“用户id”:“1”,
“所有单词”:“php”,
“非单词”:“C++”,
“一个字”:“java”,
“created_at”:空,
“更新位置”:空,
“搜索名称”:空
}, {
“搜索id”:“2”,
“用户id”:“1”,
“所有单词”:“第二个”,
“不”字:“不”,
“一个字”:“一个”,
“created_at”:空,
“更新位置”:空,
“搜索名称”:空
}]
}

这是数据:{item.one_words}

这似乎工作正常。只需确保您的数据与$scope绑定即可。

函数MyCtrl($scope){
$scope.data=[{
“搜索id”:“1”,
“用户id”:“1”,
“所有单词”:“php”,
“非单词”:“C++”,
“一个字”:“java”,
“created_at”:空,
“更新位置”:空,
“搜索名称”:空
}, {
“搜索id”:“2”,
“用户id”:“1”,
“所有单词”:“第二个”,
“不”字:“不”,
“一个字”:“一个”,
“created_at”:空,
“更新位置”:空,
“搜索名称”:空
}]
}

这是数据:{item.one_words}
对我来说很好:

对我来说很好:

对我来说很好:

对我来说很好:


也许我理解错了,但这应该是有效的。该示例包括控制器As和$scope方法

控制器

angular
    .module("app", [])
    .controller("MainController", ['$scope', function($scope) {
      var vm = this;

      var json = '[{"search_id":"1","user_id":"1","all_words":"php","not_words":"C++","one_words":"java","created_at":null,"updated_at":null,"search_name":null},{"search_id":"2","user_id":"1","all_words":"second","not_words":"not","one_words":"one","created_at":null,"updated_at":null,"search_name":null}]';
      vm.items = JSON.parse(json);
      $scope.items = JSON.parse(json);

    }]);
html

<!DOCTYPE html>
<html ng-app="app">

  <head>
    <link rel="stylesheet" href="style.css" />
  </head>

  <body ng-controller="MainController as vm">
    <h1>Items Controller As</h1>
    <div ng-repeat="item in vm.items">
      {{ item.search_id }}
    </div>

    <h1>Items $scope</h1>
    <div ng-repeat="item in items">
      {{ item.search_id }}
    </div>

    <script data-require="angular.js@1.3.6" data-semver="1.3.6" src="https://code.angularjs.org/1.3.6/angular.js"></script>
    <script src="script.js"></script>
  </body>

</html>

项目控制器组件
{{item.search_id}
项目$scope
{{item.search_id}
编辑: 从上面添加了我的评论。 为什么要使用两个嵌套的ng重复?我猜数组的一个对象应该是表中的一行。所以

<tr ng-repeat="item in data">
  ...
  <td>{{item.search_name}}</td>
  ...
</tr> 

...
{{item.search_name}
...

应该有用。除非您需要对象的键,否则比您需要的(键,值)要多。

也许我理解错了,但这实际上应该是可行的。该示例包括控制器As和$scope方法

控制器

angular
    .module("app", [])
    .controller("MainController", ['$scope', function($scope) {
      var vm = this;

      var json = '[{"search_id":"1","user_id":"1","all_words":"php","not_words":"C++","one_words":"java","created_at":null,"updated_at":null,"search_name":null},{"search_id":"2","user_id":"1","all_words":"second","not_words":"not","one_words":"one","created_at":null,"updated_at":null,"search_name":null}]';
      vm.items = JSON.parse(json);
      $scope.items = JSON.parse(json);

    }]);
html

<!DOCTYPE html>
<html ng-app="app">

  <head>
    <link rel="stylesheet" href="style.css" />
  </head>

  <body ng-controller="MainController as vm">
    <h1>Items Controller As</h1>
    <div ng-repeat="item in vm.items">
      {{ item.search_id }}
    </div>

    <h1>Items $scope</h1>
    <div ng-repeat="item in items">
      {{ item.search_id }}
    </div>

    <script data-require="angular.js@1.3.6" data-semver="1.3.6" src="https://code.angularjs.org/1.3.6/angular.js"></script>
    <script src="script.js"></script>
  </body>

</html>

项目控制器组件
{{item.search_id}
项目$scope
{{item.search_id}
编辑: 从上面添加了我的评论。 为什么要使用两个嵌套的ng重复?我猜数组的一个对象应该是表中的一行。所以

<tr ng-repeat="item in data">
  ...
  <td>{{item.search_name}}</td>
  ...
</tr> 

...
{{item.search_name}
...

应该有用。除非您需要对象的键,否则比您需要的(键,值)要多。

也许我理解错了,但这实际上应该是可行的。该示例包括控制器As和$scope方法

控制器

angular
    .module("app", [])
    .controller("MainController", ['$scope', function($scope) {
      var vm = this;

      var json = '[{"search_id":"1","user_id":"1","all_words":"php","not_words":"C++","one_words":"java","created_at":null,"updated_at":null,"search_name":null},{"search_id":"2","user_id":"1","all_words":"second","not_words":"not","one_words":"one","created_at":null,"updated_at":null,"search_name":null}]';
      vm.items = JSON.parse(json);
      $scope.items = JSON.parse(json);

    }]);
html

<!DOCTYPE html>
<html ng-app="app">

  <head>
    <link rel="stylesheet" href="style.css" />
  </head>

  <body ng-controller="MainController as vm">
    <h1>Items Controller As</h1>
    <div ng-repeat="item in vm.items">
      {{ item.search_id }}
    </div>

    <h1>Items $scope</h1>
    <div ng-repeat="item in items">
      {{ item.search_id }}
    </div>

    <script data-require="angular.js@1.3.6" data-semver="1.3.6" src="https://code.angularjs.org/1.3.6/angular.js"></script>
    <script src="script.js"></script>
  </body>

</html>

项目控制器组件
{{item.search_id}
项目$scope
{{item.search_id}
编辑: 从上面添加了我的评论。 为什么要使用两个嵌套的ng重复?我猜数组的一个对象应该是表中的一行。所以

<tr ng-repeat="item in data">
  ...
  <td>{{item.search_name}}</td>
  ...
</tr> 

...
{{item.search_name}
...
应该有用。除非您需要对象的键,否则