用ModuleLoaderl加载module,如何向module里传递参数
用ModuleLoaderl加载module,如何向module里传递参数
请给出例子啊,谢谢
[解决办法]
这个还真不好传,因为每个module都编译成swf文件了,要调用里面的方法的话,也只能强行吊用
类似这种 module['test'](),我之前好像试过吧,可不可以我忘记了,个人不太推荐这种方法
其实可以用全局变量,在module里面bindingUtils.bind...
这个方法是通用的,只要binding的地方都能解决,用来解决module的问题肯定可以的。
[解决办法]
这种例子网上一大堆
下面这篇文章就已经讲的很清楚了
http://blog.csdn.net/xiang08/archive/2009/09/21/4577776.aspx
[解决办法]
可以这样设计
先做个接口 所有的module都要实现这个接口
package demo{
public interface ICustomModule{
function setParam(param:Object);
}
}
再用一个仓库来存取他们
package demo{
import flash.utils.Dictionary;
import mx.modules.Module;
public class Store{
private static const _store:Dictionary = new Dictionary();
public static function getModule(url:String):ICustomModule{
return (_store[url] as ICustomModule);
}
public static function putModule(url:String, impl:ICustomModule):void{
_store[url] = impl;
}
}
}
在初始化Module的时候Store.putModule(路径,module类);
要传参的话Store.getModule(路径).setParam(参数)