2012-11-28 145 views
2

首先:我认为这个问题适用于大多数(如果不是全部)当今具有持久层的JavaScript MVWTF框架。在AngularJS中处理大型数据集

我目前的任务是重写Angular中网站的评论管理部分,以加快那些不得不批准或将评论标记为垃圾邮件的人的工作流程。该网站已经有相当多的评论,每天都会有更多的评论。

现在的问题是:我如何在Angular中处理这个数据集?我看到的所有例子都很好用,但所有这些例子都适用于小数据。

我们头脑风暴了几个想法,最好的一点是:在启动JS应用程序时下载最新的X注释,然后在现有(客户端)数据集上应用Angular过滤器后搜索或优化列表时,将匹配来自服务器的数据(或者如果我们正在分页,则是匹配数据的一个子集),并将其与我们已有的客户端数据进行合并。这样,客户端上的数据将会越来越广泛,随后的客户端搜索将会越来越精确。

希望这是有道理的。

还有其他想法吗?

谢谢。

回答

2

你必须小心的最大的问题是通过在整个应用程序的多个范围内复制大对象/数组而创建的膨胀。这可能是由于将大对象放在控制器的$ scope中,然后将它传递给指令的$ scope(例如ng-repeat)引起的。在您的应用程序中调查此问题的一个好方法是查看Angular Batarang

如果您要在多个控制器,指令和服务中使用这么多的数据(我认为它是这样),它是将它放在$ rootScope中或者可能是它自己的服务中可能是一个好主意。对于$ rootScope的情况是,如果您只是想将其作为数据存储并访问它,无论您愿意如何。一个服务的情况是,如果你想要有可重用的方法来查询/添加/删除大块数据,你甚至可以让服务处理数据的$ http.get。

我希望有帮助。