有没有一种方法可以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从下面的回答中获得此更新
目前,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,则数组将打印“周一”、“周二”、“周三”、“周四”、“周五”、“周一”、“周二”、“周三”、“周四” 这是我已经尝试过的代码 我拿回来的结果是 但我期待的结果是