在actionscript中,对象类可以充当存储键值组合的集合:
var o:Object = new Object();
o["a"] = 1;
但是当我尝试扩展它并添加一些自定义功能时:
var mo:MyObject = new MyObject();
mo["a"] = 1;
我明白了:
ReferenceError:错误#1056:不能 创建属性 为MyObject。
我该如何解决这个问题? 感谢。
答案 0 :(得分:3)
您需要将MyObject
班级设为dynamic class。
package foo.bar {
public dynamic class MyObject {
}
}
动态类支持Object
的{{1}}行为 - 要获取任意<String,Object>
地图,您需要扩展Dictionary
(再次,使类动态化) )。