這裏是我會怎麼做:
創建做這您當前要在beforeexpand
事件發生在渲染/修改邏輯功能。
在這個函數中,在面板上設置一個自定義屬性,這樣你就會知道它是根據你的邏輯進行渲染/修改的。 myPanel.isPrepared = true;
。
此外,在這個函數的最後做另一個呼叫myPanel.expand();
然後,在beforeexpand
處理程序把一個條件來檢查,如果你的渲染/修改已經完成例如,if (myPanel.isPrepared) {...
如果通過,然後不要在處理程序中做任何事情,並讓面板擴展。
如果是的話那麼不通撥打上面提到的功能,然後return false;
,將停止從擴大面板,你的函數會做你想要的需要渲染/修改,然後它會調用擴展當它全部完成。
假設你不與MVC模式創建的應用程序的處理程序和函數可以是這個樣子:
myPanel.on('beforeexpand`, function() {
if (!myPanel.isPrepared) {
prepareMyPanel();
return false;
}
})
function prepareMyPanel() {
// rendering/modification logic here...
myPanel.isPrepared = true;
myPanel.expand();
}
如果要創建與MVC模式的應用程序,你應該可以說在翻譯到正確的控制器處理程序。
每次該面板擴展時,渲染邏輯是否需要不同?或者它只是在應用程序加載後一次? – Geronimo
有一次,小組第一次擴大。 – elbaid