【问题标题】:How to increment a counter variable as you loop through an ng-repeat?如何在循环 ng-repeat 时增加计数器变量?
【发布时间】:2016-12-14 09:04:28
【问题描述】:

如果我有一个循环遍历包含 100 条记录的数组的 ng-repeat。假设我有 $scope.counter,我想通过 ng-repeat 每次迭代将该值增加 1。如何在 ng-repeat 中注入函数来增加计数器?

我需要计数器,以便将其用作进度条。 ng-repeat 需要一些时间才能完成,所以我基本上想在数据加载时以图形方式显示进度。

这似乎很简单明了,但我没有在网上看到任何东西。这让我相信我要么做错了什么,要么就是有更好的方法。

谢谢!

【问题讨论】:

  • 如果你的数组是异步填充的,你需要一个回调告诉你数组的长度已经改变,然后在回调中增加你的计数器

标签: javascript angularjs angularjs-ng-repeat progress-bar ng-repeat


【解决方案1】:

ngRepeat 在一个摘要循环中完成所有操作。

如果您的集合有 10 个元素,则这 10 个元素将在一个周期内从模型处理到视图。如果您的集合有 100 个元素,那么这 100 个元素将在一个周期内从模型处理到视图。

ngRepeat 中没有允许您使用任何计数器系统的中间阶段。您的计数器只会在一个摘要循环中从 0 变为 10(或 100),这基本上证明没有用。

您必须创建自己的系统,该系统将在一个摘要周期中处理每个元素,允许您使用计数器系统,但也会创建一个非常昂贵的指令,会占用大量处理时间。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-27
    • 1970-01-01
    • 2017-07-15
    • 1970-01-01
    • 2021-12-30
    • 2018-06-11
    相关资源
    最近更新 更多