在Angular2中渲染一棵巨树

时间:2017-11-12 14:18:14

标签: angular tree rendering render

最近,我们遇到了一些渲染问题。

我们在Tree数据结构中有2,500个(可能会增加到5,000个)实体。

我们在客户端拥有整个数据(我们的应用程序无法分页,无论数据是否已经可用)。

我们有一些"搜索"用户可以输入文本的系统,它将过滤相关数据。 问题是 - 树算法变化很快,但渲染大约需要3秒。

此外,我们将视图中的数据表示为手风琴树。打开手风琴是地球上最慢的事情:/

我们尝试过的解决方案:

  1. 我们没有返回新树,而是设置隐藏属性,因此不需要重新渲染所有内容

  2. 添加一些" shouldRender"财产,好像要检查是否有必要立即渲染一些实体

  3. 目前根据用户"正在进行一些"渲染。列表中的位置"溶液

  4. 使用所有解决方案的OnPush策略。

  5. 这些解决方案对于何时渲染事物有好处,但它们都没有给我们提供足够好的"结果

    提前致谢!

0 个答案:

没有答案