如何处理Angular中的大数据

1 javascript xmlhttprequest angularjs

我有一个完成的AngularJS应用程序,它基本上显示了一个表,其中包含许多(400+)行$resources.数据是可排序和可搜索的,应用程序加载有点慢(2s +),是的,我用过$cacheFactory.我很瘦,这是一个RAM问题.

我想到只加载100个条目并在搜索,排序或滚动后自动重新加载.这会加速应用程序,但搜索和排序真的很慢.

你会如何在Angular中处理这个问题?

btm*_*tm1 6

在处理大型数据集时,在决定哪些数据应该是双向数据绑定时需要非常小心,否则你将使用$ watch表达式压倒DOM和cpu.

我创建了一组指令,只在需要时绑定一次数据.

这里有三个我做过的链接应该有用:

https://gist.github.com/btm1

set-attr - 在具有指定值的元素上设置任何属性,并且不添加监视侦听器.U可以使用它来设置类或数据属性或ID

set-if - 使用它而不是显示或隐藏或切换.这是一个只评估一次的if语句,它将从DOM中删除项目

set-repeat - 这个很棒,特别是如果你重复的东西不会改变,所以它只会迭代一次.

我创建了其他set-text,set-html,set-href,set-source,我发现我使用它们很多,因为大多数数据不需要是双向数据绑定.