【问题标题】:Simple ng-repeat not working简单的 ng-repeat 不起作用
【发布时间】:2017-02-27 22:28:05
【问题描述】:

我的 angularjs 应用程序中有以下代码,为什么这个简单的 ng-repeat 不起作用?

var app = angular.module('anApp', []);
app.controller('aCtrl', function($scope) {
  $scope.data = ["", "File", "", "Edit", "", "Format", ""];
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="anApp" ng-controller="aCtrl">
  {{data}}
  <ol>
    <li ng-repet="j in data">{{j}}</li>
  </ol>
</div>

【问题讨论】:

  • 按 $index 使用轨道
  • 下面的答案很有帮助,但可能是 ng-repeat 拼写错误?

标签: javascript html css angularjs


【解决方案1】:

试试这个。 data数组有重复项然后使用track by $index

<ol>
  <li ng-repeat="j in data track by $index">{{j}}</li>
</ol>

【讨论】:

  • 你拼错了ng-repeat
  • 这是有效的。您必须等待几分钟才能标记答案
【解决方案2】:

AngularJS 中不允许有重复的键,而且你拼错了ng-repeat

Docs

var app = angular.module('anApp', []);
app.controller('aCtrl', function($scope) {
  $scope.data = ["", "File", "", "Edit", "", "Format", ""];
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="anApp" ng-controller="aCtrl">
  {{data}}
  <ol>
    <li ng-repeat="j in data track by $index">{{j}}</li>
  </ol>
</div>

【讨论】:

    【解决方案3】:

    Angular Doc.Repeater 中的重复键

    var app = angular.module('anApp', []);
    app.controller('aCtrl', function($scope) {
      $scope.data = ["", "File", "", "Edit", "", "Format", ""];
    })
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
    <div ng-app="anApp" ng-controller="aCtrl">
      {{data}}
      <ol>
    <li ng-repeat="j in data track by $index">{{j}}</li>
      </ol>
    </div>

    【讨论】:

      【解决方案4】:
      You can use this code it is working
      In view
          {{data}}
            <ol>
            <li ng-repeat="j in data track by $index">{{j}}</li>
            </ol>
      
      and in Javascript
      
      var app = angular.module('plunker', []);
      
      app.controller('MainCtrl', function($scope) {
              $scope.data = ["", "File", "", "Edit", "", "Format", ""];
      });
      

      对于你来说,我是用 plunker 写的,请更正 ng-repeat 的拼写

      https://plnkr.co/edit/Q1OeiIzGBgpppluvtOT1?p=preview

      【讨论】:

      • 感谢您的回复,
      • {{j}}
      • 这样就可以了。我也更新了 plunkr
      猜你喜欢
      相关资源
      最近更新 更多
      热门标签