将动态对象转换为 StringMap
Convert Dynamic Object to StringMap
我正在使用 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?
谢谢!
最简单的解决方案可能是使用 Serialization mechanism built into Haxe。下面是一些伪代码:
节省:
SO.data.users_arr = Serializer.run(users_arr);
加载中:
var users_arr:StringMap<Dynamic> = Unserializer.run(SO.data.users_arr);
我正在使用 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?
谢谢!
最简单的解决方案可能是使用 Serialization mechanism built into Haxe。下面是一些伪代码:
节省:
SO.data.users_arr = Serializer.run(users_arr);
加载中:
var users_arr:StringMap<Dynamic> = Unserializer.run(SO.data.users_arr);