如何将动态范围纳入视野

时间:2015-09-25 18:45:54

标签: angularjs

在我的控制器中,我有这段代码:

$scope.lists = [{
  listName: 'list1'
}, {
  listName: 'list2'
}];

angular.forEach($scope.lists, function(item) {
  var listName = item.listName;
  $scope[listName] = [{
    Name: 'Stefan'
  }, {
    Name: 'Stefan'
  }, {
    Name: 'Stefan'
  }, {
    Name: 'Stefan'
  }];
});

列表中的输入来自Web服务,因此每次重新加载应用程序时,值(list1和list2)都可能不同。我还可以在列表中添加2个以上的项目。 如何在我的视图中显示$scope[listName]部分ng-repat中的值?

感谢您的帮助。 斯蒂芬。

1 个答案:

答案 0 :(得分:0)

您可以尝试这样的事情:

(function() {
  angular.module("myApp", []).controller("controller", ["$scope",
    function($scope) {
      $scope.lists = [{
        listName: "list1"
      }, {
        listName: "list2"
      }];

      angular.forEach($scope.lists, function(item) {
        var listName = item.listName;
        $scope[listName] = [{
          Name: "Stefan"
        }, {
          Name: "Stefan"
        }, {
          Name: "Stefan"
        }, {
          Name: "Stefan"
        }];
        $scope.results = $scope[listName];
      });
    }
  ]);
})();
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div data-ng-app="myApp">
  <div data-ng-controller="controller">
    <ul>
      <li data-ng-repeat="item in results">{{item.Name}}</li>
    </ul>
  </div>
</div>