这篇文章主要介绍了为什么要Flex模块化,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
1:为什么要Flex模块化;
Flex模块化提供了分离应用程序代码到不同的swf文件上以便减少下载时间和文件大小。使用Modules的好处是:
主应用程序开始时不需马上下载modules。应用程序会根据需求载入和卸载modules。
由于每个modules独立于其他应用程序modules,当需要改变一个modules时,你只需要重编译这个modules而不是整个应用程序。
Flex模块化可创建Flex模块化应用程序是提高Flex框架性能的重要方面,提供更多能力控制下载时间和文件大小,使用modules,你可以根据哪些可被独立载入,哪些可被其他程序使用而分离应用程序代码,
2:如何Flex模块化;
2.1创建Flex模块
基于mxml的模块,在你的工程右键->new->mxmlModule
<?xmlversionxmlversion="1.0"encoding="utf-8"?> <mx:Modulexmlns:mxmx:Modulexmlns:mx="http://www.adobe.com/2006/mxml"layout="absolute"width="400"height="300"> </mx:Module>
基于as的模块
package { importmx.modules.Module; publicclassGeneralextendsModule { publicfunctionGeneral() { super(); } } }
2.2加载Flex模块
2.2.1使用ModuleLoader加载;
<mx:ModuleLoaderurlmx:ModuleLoaderurl="ContactList.swf"/>
2.2.2使用ModuleManager加载
PrivatefunctioncreationHandler():void { _moduleInfo= ModuleManager.getModule('ContactList.swf' ); _moduleInfo.addEventListener(ModuleEvent.READY, moduleLoadHandler); _moduleInfo.load(); } PrivatefunctionmoduleLoadHandler(evt:ModuleEvent):void { canvas.addChild(_moduleInfo.factory.create()as DisplayObject); }
2.2.3创建弹出Flex模块
Vargeneral:ModuleLoader general=ModuleLoader(mx.managers.PopUpManager.createPopUp(this,ModuleLoader)); general.url="General.swf";
注意:在创建弹出模块时,有时会产生:无法将mx.managers::PopUpManagerImpl@bba9941转换为mx.managers.IPopUpManager这种错误,这个时候我们需要在主程序里引入
importmx.managers.IPopUpManager; privatevaripopUp:IPopUpManager
感谢你能够认真阅读完这篇文章,希望小编分享的“为什么要Flex模块化”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网行业资讯频道,更多相关知识等着你来学习!