所以我的应用程序中有一些对象,Map<number,any[]>
作为其属性之一。
目前我正在使用localForage
来保持持久性,当地图被保存时,它使用android或windows(浏览器模拟)与ionic serve
很好地存储它,而不是使用ios。
它也不能在我的Android设备上运行。
这是测试我的观点的代码示例:
let myMap: Map<number,any[]> = new Map();
myMap.set(1,['banana','pimento']);
console.log(myMap);
localForage.config({});
localForage.setItem("myMap",myMap)
.then(()=>localForage.getItem("myMap")
.then(map => console.log(map))
);
在android和windows(浏览器模拟)上,它显示地图就好了,在ios上它并没有。不同之处在于ios使用webSQL数据库而其他人使用indexedDB数据库。
我需要序列化它吗?有没有更好的方法来存储修复此问题的数据?
答案 0 :(得分:0)
所以我找到了解决问题的方法,用{:1>序列化Map
对象
JSON.stringify(Array.from( myMap.entries()));
然后用以下内容反序列化:
new Map<any,any>(JSON.parse(myMapFromStorage));