当前位置: 首页 > 面试题库 >

带数字和范围的AngularJS For循环

秦阳旭
2023-03-14
问题内容

Angular确实在其HTML指令中使用数字为for循环提供了一些支持:

<div data-ng-repeat="i in [1,2,3,4,5]">
  do something
</div>

但是,如果您的范围变量包含具有动态数字的范围,则您每次都需要创建一个空数组。

在控制器中

var range = [];
for(var i=0;i<total;i++) {
  range.push(i);
}
$scope.range = range;

在HTML中

<div data-ng-repeat="i in range">
  do something
</div>

这行得通,但是这是不必要的,因为我们根本不会在循环中使用范围数组。有谁知道设置最小值/最大值的范围或常规值?

就像是:

<div data-ng-repeat="i in 1 .. 100">
  do something
</div>

问题答案:

我稍微调整了这个答案,想到了这个小提琴。

过滤器定义为:

var myApp = angular.module('myApp', []);
myApp.filter('range', function() {
  return function(input, total) {
    total = parseInt(total);

    for (var i=0; i<total; i++) {
      input.push(i);
    }

    return input;
  };
});

重复使用如下:

<div ng-repeat="n in [] | range:100">
  do something
</div>


 类似资料:
  • 我医生看起来像 我想拥有超过 100个文档在50到100个之间少于100个文档我尝试使用不同的聚合,但我不知道如何在另一个聚合的计数上进行范围聚合 谢谢你的帮助,

  • 问题内容: 在Java中,循环的主体和循环条件不属于同一范围。因此,以下代码将无法编译: 但是这段代码对我来说确实有意义。 另外,如果身体和身体状况都在同一范围内,我将找不到任何陷阱。由于主体将始终被执行,而Java则不会,我不知道如何跳过最外层主体范围中的变量声明。即使有可能,编译器始终可以检测到这种可能性,然后产生编译时错误。 是否有这种现象的原因(除了将循环的格式保持为与相同)?我真的很好奇

  • 问题内容: 我想知道为什么在 i 变量下面的代码中 仍然显示“ 5” 而不是显示 “ 1” 然后 “ 2” 然后 “ 3” ,依此类推?必须是一个范围问题,但由于在全局和dom范围中更改了i变量的范围,但仍然遇到相同的问题,因此我并没有真正了解它。当我提醒 我 的AJAX功能外,它工作得很好。 这是小提琴 编辑: 我选择了 @Tushar Gupta 解决方案,因为它最适合我的需要,但是又遇到了另

  • 给定max number和range number,我希望打印出以下内容,但尽可能简短。我不知道这是否可以通过IntStream实现。 输入:max=36(或任意数)范围=10(或任意数) 输出:0-910-1920-2930-35 我的代码:

  • 这是我的密码: 基本上,我正在编写一个程序来计算考试分数,但是首先用户必须输入0-100之间的分数。 如果用户输入的测试分数超出该范围,我希望程序告诉用户重写该数字。我不希望程序以错误结束。我该怎么做?