我有一个重复的元素,重复列表中的项目“mylist”。 如果mylist超过特定大小,javascript中是否有方法“禁用”该元素上的ng-repeat?或者,如果我点击一个按钮,手段列表的ng重复行为将被禁用或指向一个不同的列表,以便我不会得到性能问题,如果用户将50,000项目添加到列表中?有没有办法通过单击按钮禁用ng-repeat?
1
A
回答
0
您可以手动更改您在任何时候都在重复的内容(例如减少mylist
如果T变得太大),或者你可以简单地使用limitTo
限制的项目数重复:
<div ng-repeat="item in mylist | limitTo: myLimit">
而且在你的控制器:
$scope.myLimit = 50;
然后,您可以添加一个按钮“加载更多”,只会做$scope.myLimit += 50
例如(或做的是,当用户向下滚动列表,通常称为“有限滚动“)。
0
您可以使用limitTo
过滤器来限制ng-repeat显示的条目。你可以在这里找到更多关于它的信息:https://docs.angularjs.org/api/ng/directive/ngRepeat
尽管没有迹象表明限制已达到,并且并非所有元素都显示出来。你需要自己实现。 limitTo
过滤器仅限于第一个元素,您无法获取数组的视图子部分。
另一种选择是使用虚拟滚动指令。喜欢的东西:https://github.com/EnzeyNet/VirtualScroll
相关问题
- 1. 有没有办法停止通过键盘点击按钮?
- 2. 通过单击按钮禁用按钮
- 3. 有没有办法用方法禁用所有按钮?
- 4. 有没有办法通过按钮发送参数?
- 5. 有没有办法做一个选择框通过点击一个按钮
- 6. 有没有办法禁用24小时的按钮?
- 7. 有没有办法使用按钮
- 8. 有没有办法通过选中单选按钮来确定必填字段?
- 9. HTMLUnit没有单击按钮
- 10. 有没有办法通过Chrome扩展禁用chrome_url_override?
- 11. 有没有办法通过编程禁用android设备?
- 12. 在用户按下关闭按钮之前,有没有办法禁止在winforms(c#)之外单击?
- 13. 有没有办法暂时隐藏或禁用单向通知?
- 14. 有没有办法点击名称为ignorecase的按钮
- 15. 有没有办法在按钮上点击两次? php,javascript
- 16. 有没有办法找出TButtonGroup的哪个按钮被点击?
- 17. 铬扩展有没有办法编程'点击'pageAction按钮
- 18. 通过点击禁用多个按钮
- 19. 有没有办法在点击按钮时不发送整个Web表单?
- 20. 有没有办法让点击SET SET单选按钮失去焦点?
- 21. 有没有办法通过响应
- 22. 有没有办法通过光滑
- 23. 有没有办法通过硒IDE
- 24. 有没有办法通过HTML渲染?
- 25. 有没有办法通过服务
- 26. 有没有办法通过PHP
- 27. 有没有办法通过点击其中一个点击2个提交按钮?
- 28. 有没有办法禁用android市场?
- 29. 有没有办法禁用xml警告?
- 30. 有没有办法禁用标签?
我发现,对于导致ng-repeat问题的大型列表,最好创建自己的指令来为您建立表格。 50,000元素会使您的网站因ng-repeat而屈膝,因为它必须检查每个摘要中的每个项目。 – Scottie
“禁用”是什么意思?你不想渲染'ng-repeat'元素并渲染其他东西吗?或者你只想渲染前N个元素? –