Haxe 将动态对象转换为StringMap

Haxe 将动态对象转换为StringMap,haxe,openfl,Haxe,Openfl,我正在使用OpenFl将StringMap保存到SharedObject 保存到SharedObject SO.data.users_arr = new StringMap<Dynamic>(); SO.data.users_arr.set("user1",{varOne:1,varTwo:2}); var users_arr : StringMap<Dynamic> = cast(SO.data.users_arr, StringMap<Dynamic>)

我正在使用OpenFl将StringMap保存到SharedObject

保存到SharedObject

SO.data.users_arr = new StringMap<Dynamic>();
SO.data.users_arr.set("user1",{varOne:1,varTwo:2});
var users_arr : StringMap<Dynamic> = cast(SO.data.users_arr, StringMap<Dynamic>);
问题是:如何从动态对象重新转换以前保存的StringMap


谢谢

最简单的解决方案可能是使用。下面是一些伪代码,它看起来是什么样子:

保存:

SO.data.users_arr = Serializer.run(users_arr);
var users_arr:StringMap<Dynamic> = Unserializer.run(SO.data.users_arr);
加载:

SO.data.users_arr = Serializer.run(users_arr);
var users_arr:StringMap<Dynamic> = Unserializer.run(SO.data.users_arr);
var users\u arr:StringMap=Unserializer.run(SO.data.users\u arr);

是的,我认为应该这样做。我认为有一种方法可以避免连载。谢谢。您是否尝试过不安全的cast
var users\u arr:StringMap=cast SO.data.users\u arr?否则我建议只使用
Dynamic
而不是StringMap。