2014-10-10 48 views
1

我正在构建一个具有非常大的文档和视图中的许多文档的应用程序。在我的测试环境中,这些视图需要几秒钟才能加载,但对于客户来说,这些视图(在dynamicViewPanel中显示)将花费12秒以上的时间(或者在第一次在给定日期加载时最多一分钟) 加载。在添加数据变为可用之前,不会对浏览器进行更新。然而,我的问题不是关于表现。向用户显示正在加载XPage视图

我该如何才能立即加载xpage以便用户看到“发生了什么事情,并且浏览器没有吞下我的请求”,但是在使用动态视图面板控件时数据最终变为可用时加载视图?

回答

3

关于部分刷新Fredrik Norling制作了一个名为“Standby Custom Control”的整洁控件,在部分刷新发生时显示“等待”图标。不知道它是否会在加载整个页面时起作用... http://openntf.org/XSnippets.nsf/snippet.xsp?id=standby-dialog-custom-control

+0

这对于目前很痛苦的很多案例来说都是惊人的,我一定会保留它,谢谢!不幸的是,对于我的主要问题领域来说,这似乎不是一个好的选择,当(可能)视图的索引仍然需要建立时,XPage的初始加载。我是否错过了该工具可以做的事情? – Greg 2014-10-10 12:56:22

0

如果您使用的是Dojo模块,有一种简单的方法可以实现部分更新和打开新页面的支持。

我发现它in a blog by Vikas Tiwari

这是一个两步过程:

  1. 添加以下道场模块到XPage。

< XP:this.resources>

< XP:dojoModule名称= “extlib.dijit.ExtLib”> </XP:dojoModule>

< XP:dojoModule名称=” extlib.dijit.Loading“> </XP:dojoModule>

< /xp:this.resources>

  • 添加下列行到您的按钮/链接的事件处理程序,其将被用于部分更新:
  • < XP:this.onStart> < /xp:this.onStart>

    < XP:this.onComplete> < /xp:this.onComplete>

    < XP:this.onError> < /xp:this.onError>

    0

    不是你的问题的答案,但你可以从这里尝试我的ViewGrid插件OpenNTF ViewGrid。如果正在构建视图索引,那么控件会一直等待,直到该过程完成(带有加载指示器)