flex 4.0 解决在MODULE中使用timer实时刷新数据,卸载MODULE后还
在使用moduleloader加载module模块时,如果module模块中使用timer来控制执行某函数,当module被卸载后,timer控制执行的函数仍在执行。如:
主应用程序为index.mxml(包含加载module的moduleloader控件),被加载的module为mo_test.swf(mo_test.mxml)
在mo_test.mxml中使用timer
mo_test.mxml中:
在主应用程序中定义全局变量保存module的状态,即当前
是否被加载。然后在timerHandler中调用判断
index.mxml中:
mo_test.mxml中: 到现在,当mo_test被卸载以后,timerHandler已经不再执行了。但当再次加载mo_test的时候有可能报错:
错误:
无法将 Object@ce19af1 转换为 mx.messaging.messages.IMessage
具体是什么原因没仔细推敲。
解决方法:在index.mxml中添加代码如下:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |