www.51flex.net
好东西大家一起分享 只说技术不拉家常

module 的加载有两种方式
1.

_moduleInfo = ModuleManager.getModule(_moduleUrl);
    
            
            _moduleInfo.addEventListener(ModuleEvent.READY, OnModuleReady);
            _moduleInfo.addEventListener(ModuleEvent.ERROR, OnModuleLoadError);
            
//info.addEventListener(ModuleEvent.SETUP, OnModuleLoadError);
            
//info.addEventListener(ModuleEvent.UNLOAD, OnModuleLoadError);
        
            
//info.load()
            _moduleInfo.load();

private function OnModuleReady(e:ModuleEvent):void{
            var obj:Object 
= e.module.factory.create();
            
            
//var obj:Object = (e.target as IModuleInfo).
            _displayObject = obj;
            
            
this.dispatchEvent(new ModuleEvent(ModuleEvent.READY));
        }

2.
_moduleLoad = new ModuleLoader();
_moduleLoad.url 
= ;
                
_moduleLoad.addEventListener(ModuleEvent.READY, OnModuleReady);
_moduleLoad.addEventListener(ModuleEvent.ERROR, OnModuleLoadError);

_moduleLoad.loadmodule();

private function OnModuleReady(e:ModuleEvent):void{

            
var obj:Object 
= e.target.child;        
            
        }


个人觉得第一种方法 和第2种方法并没有什么区别

但是当我在 canvas.addChild(他们各自放回的moudle引用后 第2种方式会报异常错误  是系统级别的错误 界面更是显示不出来

但是第一种方式 确没有任何问题 

但是工程里面还有一些复杂的代码 也可能受其它的影响

但是 我还是建议使用第2种方式来 自己加载module
posted on 2007-07-26 23:42  aixia  阅读(6684)  评论(0编辑  收藏  举报