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が表示され、すぐに非表示になります。

busyindicator.hideをinvokeプロシージャのonSuccessに移動すると、問題が解決するはずです(onFailureにも入れてください...)これがお役に立てば幸いです

于 2013-03-12T11:43:09.020 に答える