Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在服务器中构建html并绑定到ng repeat_Javascript_Performance_Angularjs_Angularjs Directive_Angularjs Ng Repeat - Fatal编程技术网

Javascript 在服务器中构建html并绑定到ng repeat

Javascript 在服务器中构建html并绑定到ng repeat,javascript,performance,angularjs,angularjs-directive,angularjs-ng-repeat,Javascript,Performance,Angularjs,Angularjs Directive,Angularjs Ng Repeat,我有张桌子,ng repeat正在建。该表包含大量数据,有时在性能较差的计算机上,html的构建阶段需要10-20秒 因此,我已经开始探索如何在服务器中构建html,但问题是我会松开数据绑定,我需要它,因为我在表中有内联编辑功能 最终的解决方案是在服务器端呈现表,剩下的所有指令包括ng repeat,在客户端,使ng repeat识别html已经第一次呈现,并且在数据发生第一次更改之前不会再次呈现 在NgRepeat指令中的Angular源代码中,有一个“lastBlockMap”对象,它包含由

我有张桌子,ng repeat正在建。该表包含大量数据,有时在性能较差的计算机上,html的构建阶段需要10-20秒

因此,我已经开始探索如何在服务器中构建html,但问题是我会松开数据绑定,我需要它,因为我在表中有内联编辑功能

最终的解决方案是在服务器端呈现表,剩下的所有指令包括ng repeat,在客户端,使ng repeat识别html已经第一次呈现,并且在数据发生第一次更改之前不会再次呈现

在NgRepeat指令中的Angular源代码中,有一个“lastBlockMap”对象,它包含由ng repeat创建的每个元素之间的映射,映射到该结构中的他的范围:

clone: [THE_ELEMET]
id: "005"
scope: ChildScope
通过阅读这篇文章:

我得出的结论是,如果我创建这个对象,并以某种方式将其传递给ng REPAT指令,该指令将知道html已经呈现,并且不会再次呈现它

问题是如何将这些信息传递给ng repeat??? 有人遇到过这种情况吗

附言。 我熟悉所有的“ngRepeat Performance”帖子和文章,并且在接近这个解决方案之前尝试了很多其他选项,所以请尝试帮助我解决这个问题

第二个p.S。
对不起,我的英语…:)

没有将html编译成循环的解决方案

也许您需要尝试清理您试图呈现的json数据并使其尽可能简单,如果您在表中包含指令,请在完成表后尝试呈现它


另外,尝试找出缓慢的原因,禁用内联编辑和表中的所有其他功能。

使用prerender.io在服务器端呈现html。它基本上打开一个phantomjs进程,在服务器上执行JS,并提供输出。工作得很好。

您考虑过分页吗?不确定为什么您认为您的问题是客户端渲染,以及为什么服务器端渲染(和删除大量数据)会有更好的性能。您是否实际分析了导致性能下降的特定用例/是的,我考虑过分页和延迟加载,但是我的需求迫使我加载所有数据。如果不是DOM渲染,它会是什么?我有大数据,但不是太大,对他的计算会导致10-20秒的冻结。。另一方面,我用这些数据构建了大约40个表来表示这些数据。。相信我,在发布这个问题之前,我已经从各个方向进行了检查。。