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

ng重复定义次数而不是在数组上重复的方法?

黄无尘
2023-03-14
问题内容

有没有一种方法可以ng-repeat定义次数,而不必总是遍历数组

例如,在下面,我希望列表项显示5次,并假设$scope.number等于5,并且增加数字,因此每个列表项都按1、2、3、4、5递增

所需结果:

<ul>
   <li><span>1</span></li>
   <li><span>2</span></li>
   <li><span>3</span></li>
   <li><span>4</span></li>
   <li><span>5</span></li>
</ul>

问题答案:

较新版本的AngularJS(> = 1.3.0)允许您仅使用变量(无需功能)来执行此操作:

<li ng-repeat="x in [].constructor(number) track by $index">
    <span>{{ $index+1 }}</span>
</li>



$scope.number = 5;

在首次提出问题时这是不可能的。感谢@Nikhil Nambiar从下面的回答中获得此更新

原创(5/29/2013)

目前,ng-repeat仅接受集合作为参数,但是您可以这样做:

<li ng-repeat="i in getNumber(number)">
    <span>{{ $index+1 }}</span>
</li>

在控制器中的某个位置:

$scope.number = 5;
$scope.getNumber = function(num) {
    return new Array(num);   
}

这样一来,您就可以随意更改$scope.number为任何数字,并且仍然可以保持您要查找的绑定。

编辑(1/6/2014) -较新版本的AngularJS(> = 1.1.5)需要track by $index

<li ng-repeat="i in getNumber(number) track by $index">
    <span>{{ $index+1 }}</span>
</li>

这是一个带有几个使用相同getNumber功能的列表的小提琴。



 类似资料:
  • 我知道要在数组中查找值是否存在,我可以使用indexOf,但如何使用对象数组呢?

  • 我试图用ng repeat in Angular来重复一个多维数组的子数组。我的json对象是这样的: 我尝试了这样的东西: 然后在这个孩子的表中:

  • 我需要一个数据列表,该列表通过其定义的属性(监控)进行过滤,我不能只执行以下操作: 因为我需要计算未受监控的。 对于这个示例,我简化了从getProjects()返回的数据,通常是: 我将首先遍历this.projects.owner,然后遍历模板中的其余部分。此处未监控的总数将等于1。 所以我想我不能用这种方法 例子: 样板 控制器: 模板正确显示了2个结果: 项目1项目2 但console.l

  • 对朱莉娅来说是新来的,所以这可能很容易。 我有一个n×m的数组和一个长度为n的向量,我想在向量的对应元素中重复数组的每一行的次数。例如: 结果应该是6乘6的数组。我尝试了功能,但是 生成一个数组,因此需要作为重复元素的维度。在matlab中,我会使用,我希望julia提供类似的东西。我的实际矩阵要大得多,我需要多次调用该函数,所以这个操作需要尽可能快。

  • 问题内容: 我想创建一个1D NumPy数组,该数组由另一个1D数组的1000个背对背重复组成,而无需将数据复制1000次。 可能吗? 如果有帮助,我打算将两个数组都视为不可变的。 问题答案: 你做不到 NumPy数组在每个维度上必须具有一致的步幅,而您的步幅在大多数情况下需要采用一种方式,但有时会向后跳。 您可以获得的最接近的结果是一个1000行的2D数组,其中的每一行都是您第一个数组的视图,或

  • 我有一个等于10的天数,我有一个周天数数组“周一”、“周二”、“周三”、“周四”、“周五”。现在我想重复这个数组10次。例如,如果天=9,则数组将打印“周一”、“周二”、“周三”、“周四”、“周五”、“周一”、“周二”、“周三”、“周四” 这是我已经尝试过的代码 我拿回来的结果是 但我期待的结果是