我正在使用OpenFl
将StringMap保存到SharedObject保存到SharedObject
SO.data.users_arr = new StringMap<Dynamic>();
SO.data.users_arr.set("user1",{varOne:1,varTwo:2});
从SharedObject检索
var users_arr : StringMap<Dynamic> = cast(SO.data.users_arr, StringMap<Dynamic>);
检索给我一个错误:
[Fault] exception, information=TypeError: Error #1034: Type Coercion failed: cannot convert Object@b868371 to haxe.ds.StringMap.
lib/sim/model/SOControl.hx:37: characters 20-21 : Unexpected .
问题是:如何从动态对象重新转换以前保存的StringMap?
谢谢!
答案 0 :(得分:3)
最简单的解决方案可能是使用Serialization mechanism built into Haxe。下面是一些伪代码:
<强>存储强>
SO.data.users_arr = Serializer.run(users_arr);
<强>装载强>
var users_arr:StringMap<Dynamic> = Unserializer.run(SO.data.users_arr);