这里是我会怎么做:
创建做这您当前要在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