如何增加ng-repeat中的初始变量值
<div ng-if="feedData.carouselMode == true" ng-init='start=0' ng-repeat="a in carousel_data">
<div class="owl-demo" class="owl-carousel" owl-carousel >
<div class="item" ng-repeat="(key, item) in a.carouselFeeds" ng-init="start=start+1">
{{start}}
<div ng-click="go('{{key}}', item.feedUrls.length, 'rtl')" ng-swipe-left="go('{{key}}', item.feedUrls.length, 'rtl')">
<img class="lazyOwl" ng-src="{{item.img}}" />
<span class="innersquare" image-ja="{{item.img}}">
<p ng-style="folderStyle">{{item.name }} </p> </span>
</div>
</div>
</div>
</div>
在ng-repeat中递增start = start + 1之后ng-init start = 0,但没有计数仅显示1。
这是因为每个人ng-repeat
都有自己的作用域,并且每个ng-init
人只会增加自己的作用域变量。您可以尝试使用访问父作用域$parent
。
如果您正在寻找连续的计数,请尝试此
<div ng-controller="MyCtrl">
<div ng-repeat="a in ['a','b','c']" ng-init="current = $parent.start; $parent.start=$parent.start+3;">
<div ng-repeat="x in ['alpha','beta','gamma']">
{{current + $index}}
</div>
</div>
+3
应该在哪里+[LENGTH OF INNER ARRAY]
。
http://jsfiddle.net/rvgvs2jt/2/
对于您的特定代码,它看起来像这样
<div ng-if="feedData.carouselMode == true" ng-init='current=$parent.start; $parent.start=$parent.start+a.carouselFeeds.length' ng-repeat="a in carousel_data">
<div class="owl-demo" class="owl-carousel" owl-carousel>
<div class="item" ng-repeat="(key, item) in a.carouselFeeds">
{{current + $index}}
<div ng-click="go('{{key}}', item.feedUrls.length, 'rtl')" ng-swipe-left="go('{{key}}', item.feedUrls.length, 'rtl')">
<img class="lazyOwl" ng-src="{{item.img}}" />
<span class="innersquare" image-ja="{{item.img}}">
<p ng-style="folderStyle">{{item.name }} </p> </span>
</div>
</div>
</div>
</div>
问题内容: 我需要使用(在AngularJS中)列出数组中的所有元素。 复杂的是,数组的每个元素都将转换为表的一,两或三行。 我不能创建有效的html(如果用于元素上),因为和之间不允许使用任何类型的重复元素。 例如,如果在上使用ng-repeat ,我将得到: 无效的html。 但是我需要生成的是: 其中第一行由第一个数组元素生成,接下来的三行由第二个数组生成,第五行和第六个由最后一个数组元素生
问题内容: 我知道AngularJS在ng-repeat上设置了一些监视。此时设置了哪种手表? 另外,有人可以解释在每种情况下会发生什么吗?我想知道我有很多物品,所以如果我用其他方式写的话,不会被那些本可以淘汰的手表所困扰。 之一 二 三 四个 问题答案: 每个人都会在上设置一个$ watch 。(如果您查看ng- repeat源代码 ,则其中大多数是$ watch方法的watchExpressi
问题内容: 这个问题已经在这里有了答案 : 如何在没有换行符或空格的情况下进行打印? (22个答案) 3年前关闭。 我想知道在打印某些内容时如何删除其他空格。 就像我这样做时: 输出将是: 但是我想要: 有什么办法吗? 问题答案: 如果您不需要空格,请不要使用。使用字符串串联或格式化。 级联: 格式: 后者要灵活得多,请参见方法文档和“ 格式化字符串语法” 部分 。 您还将遇到较早的格式化样式:
问题内容: 我正在用Java编写一个函数,该函数计算字符串中空格后的字符数。对于某些人来说,这个问题听起来微不足道。 现在,我想在for循环中重用此变量(位置),而无需在初始化语句中创建新的变量(i)。目前,我正在这样做。 问题答案: 您无需声明新变量: 您可以将for循环的任何字段保留为空白。 还是更好,为什么不呢?
问题内容: 我目前正在使用这段代码来呈现列表: 但是,该元素在某些浏览器上引起一些非常小的渲染缺陷。我想知道是否可以在没有div容器的情况下执行ng- repeat,或者通过其他方法来达到相同的效果。 问题答案: 正如Andy Joslin所说,他们正在研究基于注释的ng- repeats,但显然存在太多浏览器问题。幸运的是,AngularJS 1.2添加了对重复的内置支持,而无需使用新的指令和添
问题内容: 众所周知,根据JLS7 p.4.12.5, 每个实例变量均使用默认值初始化。例如(1): 但是我一直认为,这样的类实现(2): 绝对等于示例(1)。我期望,复杂的Java编译器会看到(2)中的所有这些初始化值都是多余的,并忽略了它们。 但是突然对于这两个类,我们有两个不同的字节码。 例如(1): 例如(2): 问题是: 为什么?但这是显而易见的要优化的事情。什么原因? UPD: 我使用