在flex 开发项目中,很多都会使用Module来减少application加载过大的问题。Module也确实解决了这个问题。
但是在使用Module过程中需要注意的一点 非常关键的一点那就是 定义一个IModuleInfo的时候 一定要记得把定义成全局变量哦。不然就会出现 第一次加载不了 二第二次 第三次。。。。都可以的效果。不注意这点找死了都找不出什么原因来。
为什么要定义成全局的。
原因看了下面的英文就知道了:
References to IModuleInfo must be maintained to keep the event listeneres alive. If the IModuleInfo is defined in function local scope the event listeners may get garbage collected.
google 的翻译是这样说的:
以IModuleInfo参考必须保持保持事件listeneres活着。如果IModuleInfo定义在函数的局部范围的事件监听器可能会被垃圾收集。
也就是说 在使用IModuleInfo 过程中始终要保持IModuleInfo 变量的存在,不然第一次就会被当做垃圾处理,才使得他注册事件第一次执行总是失效的问题。