因为在Ext中,load()的方法获得数据的async的,所以当我页面render好之后,数据还没获取到,而我页面又需要用到这些数据。下面是我尝试解决的方案。
写个listener, 在render后才load
首先,我以前也遇到这个问题。当时的solution是,我把整个页面都写在一起,然后可以写个listener,在页面render好之后,才load()。但是现在的情况是,我把页面分成了3个部分,所以如果这样写的话,我要写3个listeners,这是下策。
把页面也成一个function
这是我昨天洗澡想出来的,现在发现是不行了。因为如果要调用Class的话,就必须在global context上写:Ext.define()
,不能把他写在一个function里面,否则就会报错。
Object is undefined (如果我没记错的话)
等获取数据后再填充数据
意思就是,需要用到数据的地方,我先空着。等到获取数据后,我再动态地把数据填充进去。
成功了,哈哈哈哈。这样更棒了,把页面和数据彻底分离。