0

Worklight busyindicator 无法正常工作。我的问题是我正在使用多页。在页面更改时,我调用 web 服务适配器并调用忙指示符,以便它在获取时显示正在进行的工作。但是会发生页面更改和指示符快速显示和隐藏但是适配器仍处于获取阶段,并且在成功调用了一段时间数据后,但在这些工作期间没有显示忙碌指示器。

var busyIndicator = null;

function wlCommonInit(){
    busyIndicator = new WL.BusyIndicator();
    }

这是我在页面更改时调用的代码。

    busyIndicatorDemo();
    var viewPath = "views/add_fund_transfer.html";
    WL.Page.load(viewPath,
        {
                onComplete: function() {    

                PayAnyOne_Controller.GetBranches(GetBranchesProcedureName);
                busyIndicator.hide();

                }
            });

function busyIndicatorDemo() {
    busyIndicator.show();
    setTimeout(15000);
}

在多页中使用时,busyindicator 似乎不适用于 adpater。请给我解决方案或我的代码中的问题。

谢谢。

4

1 回答 1

1

似乎问题出在代码流中。您基本上正在运行此代码:

  1. 显示忙碌指示符
  2. 加载页面
  3. 页面加载完成时:调用过程(异步调用),并隐藏忙指示符。

因此,这会生成您报告的行为 - 一旦页面完成加载,busyindicator 会显示并快速隐藏,即使服务仍在获取数据(在异步调用中)

将busyindicator.hide移动到调用过程的onSuccess应该可以解决问题(也把它放在onFailure ...)希望这会有所帮助

于 2013-03-12T11:43:09.020 回答