【发布时间】:2018-04-19 07:49:22
【问题描述】:
我有一个使用标准 NG-REPEAT 以图形数组形式出现在屏幕上的 10-500 条记录的列表,可视化是一排照片
我想实现什么,但如果它甚至可能是这样的话,我无法完全理解......
屏幕上的“窗口”仅显示 10 条记录 - 完成 您可以向左或向右滚动整个列表 - 完成
但是
我想要实现的是,当到达列表的末尾时,列表会从头开始,但在无限样式循环中。双向
我从来没有做过这样的事情,也不太确定如何实现我的 ng-repeat(ListofItems 中的项目)
所以我认为最好的解决方案是
当用户通过 100 条记录获得 40 条记录时,我将 $scope.ListofItems 中的前 20 条记录 push() 到数组的末尾,并从前面删除等效的前 20 条记录。这保持一个常数100 条记录的列表,没有大量内存使用.. 我什至可以在单个记录的基础上执行此操作.. 从末尾或开头删除一条记录,并在列表的开头或结尾添加。
用户体验是无限滚动,但我怀疑浏览器体验可能会因为处理过程而变得缓慢和卡顿
Push()、Pull()、跟踪和索引将发挥作用,但如果这在技术上是可行的,任何建议都将不胜感激
编辑:经过一些研究。也许
$scope.ListofItems.push($scope.ListofItems.shift());
可能是一个从头到尾移动的解决方案,但不确定如何触发此操作或另辟蹊径(拉动?)
EDIT2:刚刚为上面做了一个手动调用的函数,它将前面的项目移动到列表的末尾,尽管我不知道如何读取屏幕位置以知道何时触发该函数
【问题讨论】:
标签: arrays angularjs angularjs-ng-repeat