2

不知道是否有可能,因为我在网上找不到任何东西。我有一个 KO 模板,我有大约 100 条记录。

在 IE 8 中(由于其次优 JS 引擎),页面加载大约需要 15 秒。在 Firefox 中,大约需要 6 秒。

我已经确认在 IE 中大约 5 秒会丢失到ko.applyBindings.

有没有办法异步应用绑定?也许有一个加载图标,以便用户可以在 KO 处理模板时继续使用页面。

4

1 回答 1

4

我有一个类似的问题。setTimeout是你需要在这里使用的。在我的应用程序中,我:

  1. 初始化一个空的(或相当空的)viewModel
  2. 应用绑定(由于模型上的依赖属性指示是否已加载所有数据,因此显示“请稍候...”消息)。
  3. 将数据块添加到 viewModel 中(我假设您有一个可观察的数组来保存大部分数据,因此您一次只需将 10 个项目推入可观察数组)

这是让我使用 jsFiddle 展示如何在绑定中使用 setTimeout 的答案:

淘汰赛渲染视图时显示进度条

于 2012-03-06T12:22:35.310 回答