Knockout.js表单对浏览器性能的影响(具有数千个可观察值)

sz81bmfz  于 2022-11-10  发布在  其他
关注(0)|答案(1)|浏览(87)

我正在创建一个表单,其中用户将能够使用knockout.js添加多行,每行将有一个5 inputs,用户可能会添加数百行。
我想使用observable array,并使它的属性也是可观察的,对于每个输入。
因此,对于一些用户来说,页面上可能有大约5000个可观察的属性。
这种方法是否会导致性能问题?是否会降低浏览器的速度?如果有,是否有任何方法可以防止它。

rqqzpn5f

rqqzpn5f1#

我们使用的控件具有可观察性和可观察性数组,这些数组在客户端保存了20 k+条记录,我们现在遇到了一个javascript/knockout墙。使用5 k时,它仍然非常顺利,但它也强烈依赖于客户端的浏览器/硬件。
更新obs.数组中的所有项时的一个主要问题是,如果迭代更改,页面将挂起,直到迭代结束。如果逻辑允许,可以使用apply方法来解决这个问题。Function.prototype.apply()
我想说,如果你100%确定它不会超过5 k,那就去做吧,它会起作用的。但老实说,现在你最好把大部分数据留在服务器上,只在那个时候检索你需要的数据。

相关问题