AS3.0模块化开发基础知识
AS3.0 的模块加载机制用得好,能帮你把项目结构分得清清楚楚,尤其是在做多 SWF 模块化开发的时候,效率提升挺的。像Loader
配合LoaderContext
这种写法,挺常见的,能控制模块的域,避免类名冲突,挺实用的。
applicationDomain的使用是关键。如果你子模块能访问主模块的类,可以传ApplicationDomain.currentDomain
;反过来,想让模块完全独立,隔离开,就新建一个new ApplicationDomain()
,这样更安全。
看起来代码不多,其实里面的门道还挺多。比如下面这段:
var loader : Loader = new Loader();
var context : LoaderContext = new LoaderContext();
context.applicationDomain = new ApplicationDomain();
loader.load(new URLRequest("loaded.swf"), context);
注意context.applicationDomain
的赋值顺序,还有你传进去的是不是一个新的ApplicationDomain
。不然模块之间容易互相影响,调试起来麻烦。
你要是还没太搞懂 AS3.0 模块加载机制,可以先撸一遍这篇,再搭配下面这些相关文章,理解会更透:
- as3.0 animation:看看动画模块怎么分
- AS3.0 实例:有些小例子写得蛮实用
- as3.0 控件包:学学组件封装
- flash as3.0 特效:界面加点特效更有感觉
- Flash AS3.0 空战:小游戏项目拆模块的思路挺清晰
- AS3.0 源代码:代码完整,适合照着练
如果你经常做 Flash 项目,建议把模块加载这块吃透了,是大型项目,维护起来会轻松多。
43.5KB
文件大小:
评论区