SAP UI5 Require Busy dialog
Sent: Thursday, June 18, 2015 4:50 PM
研究一下進入MY OPPORTUNITY的時候,BUSY INDICATOR為什么消失的很晚(似乎是LIST和DETAIL都好了后才消失)
概括地說,Ross描述的busy dialog在LIST和DETAIL的數據都回來了才消失的,這個behavior是working as designed的。具體看下面的代碼。
為了更深入理解busy dialog,可以看附件兩個視頻。
我在Opp header ETAG的后臺實現里加了一個10s的延時。
n 第一個video timeout_1500.wmv: 雖然list和detail的數據都ready了,但是因為ETAG需要10s才能返回,整個UI被這個ETAG的request造成的busy dialog鎖住了,直到10s后UI才能點擊
n 第二個video是把默認的timeout從1500毫秒改成30秒,即busy dialog不會顯示。從video里看出UI始終是可操作的,盡管后臺的ETAG還沒有回來。
這個busy dialog實際上也是一種保護措施。如果UI上某些操作必須依賴于最新的ETAG,采用這種方式可以讓user同步的ETAG請求返回UI之前就能夠進行操作,會造成state的inconsistency。
Key message we could find in the source code:
Take the process to open Opportunity tile as example.
request url:
And connectionManager is responsible to call requireBusyDialog:
iRequiredCount changed from 0 to 1:
iRequiredCount changes from 3 to 2:
Since now iRequiredCount still > 0, the busyDialog will not be closed.
now busy dialog is closed:
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
總結
以上是生活随笔為你收集整理的SAP UI5 Require Busy dialog的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 岑昏和甄姬处于连环状态且都装备着藤甲无手
- 下一篇: Jerry开发的SAP note工具