淘汰赛“闪烁”问题(Knockout 'flickering' issue)

2019-08-08 17:00发布

我建立使用KO一个SPA(单页应用程序)。 该应用程序看起来像一本书,用户可以翻页。

问题是,每一次页面加载,有一个短暂的瞬间,其中页面“闪烁”,并且用户看到的页面的无样式版本。 我想这是由于这样的事实,很多造型的依赖KO绑定,直到完成KO其“神奇”的用户获得无样式代码的一瞥引起的。

是否有可能什么时候KO完成了它的所有绑定,然后才显示在页面?

我已经成功通过加载的看法,但当然这不是一个很好的解决方案之前设置超时部分地解决这个问题。

Answer 1:

是的,这是很容易的实际。 应用display:none至顶层div (或W / E容器),和data-bind="visible: true" 。 这将导致要隐藏的页面,直到淘汰赛通过结合(这显然是不可能发生的,直到其完全加载)取消隐藏它。

既然你是使用不可观察值,淘汰赛将甚至懒得再重新检查。 不应该有后的初始绑定一个性能问题。



Answer 2:

我认为这是通过使用模板之前回答更好。

什么是隐藏屏幕,而淘汰赛的js绑定正在兴建的最佳方式?



文章来源: Knockout 'flickering' issue