每当有人点击“保存”按钮时,我想要包含一个忙碌指示符。我按照演示工具包中的示例编写了代码。当购物车中只有少量商品时,它可以正常工作,但如果购物车中有大量商品,则在Odata调用结束后以及订单成功放置后,忙碌指示器会显示。按下按钮时不会立即显示忙碌指示灯。知道为什么会这样吗?
hideBusyIndicator : function() {
sap.ui.core.BusyIndicator.hide();
},
showBusyIndicator : function (iDuration, iDelay) {
sap.ui.core.BusyIndicator.show(iDelay);
if (iDuration && iDuration > 0) {
if (this._sTimeoutId) {
jQuery.sap.clearDelayedCall(this._sTimeoutId);
this._sTimeoutId = null;
}
this._sTimeoutId = jQuery.sap.delayedCall(iDuration, this, function() {
this.hideBusyIndicator();
});
},
onSaveButtonPressed: function()
{
this.showBusyIndicator(4000, 0);
},
答案 0 :(得分:0)
Normaly busy indicaotr不适用于ajax / odata呼叫不到1秒。
用于此用途
sap.ui.core.BusyIndicator.show(的 0 强>)
传递'0'立即启动并确保所有odata呼叫都是同步。