【问题标题】:Why Control Busy Indicator doesn't work为什么控制忙指示灯不起作用
【发布时间】:2015-12-07 17:07:29
【问题描述】:

我的目的是在我向my oModel create function 发送数据时显示Control Busy Indicator。但我看不到它可能是因为 oModel 同步问题。它应该在调用 oModel 之前出现,并在 fnSuccess 函数起作用时消失。我尝试使用同步创建功能,例如:

var fnSuccess = function(oData, oResponse) {
    oVbox.setBusy(false);
};
oVbox.setBusy(true);
oModel.create("sPath", serviceData, null, fnSuccess, fnError, true);

但我仍然看不到控制繁忙指示器。我对Busy Indicator 也有同样的问题。提前谢谢你。

【问题讨论】:

    标签: javascript sapui5 busyindicator


    【解决方案1】:

    试试,oVbox.setBusyIndi​​catorDelay(0); 然后 oVBox.setbusy(true);

    如果这不起作用,请尝试在 setBusy 和调用 create 方法之间添加一个小延迟。 (使用 setTimeout)

    【讨论】:

    • 谢谢,我稍微更改了代码,但我会尝试,我想 setTimeout 会起作用。
    【解决方案2】:

    它没有必要总是来。基本上这取决于代码的执行时间。

    【讨论】:

    • 但是发送数据和接收它的参数需要很长时间,我想它应该来了。
    • 如果您的代码运行顺利,那么您为什么要这样做。它用于需要大量处理时间的代码(在 javascript 中只有一个线程),但在您的情况下它工作正常。
    • 但是我需要向我的客户展示这个繁忙的指标,因为他们必须看到这个才能知道进程正在后台运行。我的代码需要很长时间,我的客户需要看到这一点。
    【解决方案3】:

    你可以在成功函数中将 .setBusy 的值设置为 true 以帮助更多地理解问题。 这将有助于诊断您的问题,因为它可能与加载速度有关。

    例如

    var fnSuccess = function(oData, oResponse) {
        oVbox.setBusy(true);
    };
    

    【讨论】:

    • 是的@Bernard 我可以设置,设置后我可以看到 Control Busy Indicator。
    猜你喜欢
    • 2012-07-28
    • 1970-01-01
    • 2012-01-20
    • 2017-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-09
    相关资源
    最近更新 更多