收藏
回答

wx.getStorageSync取出Object类型异常

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小游戏 Bug wx.getStorageSync 微信iOS客户端 7.0.7 2.9.4

同一份storage数据,分别使用以下方法读取:

1:读取字符串,使用JSON.parse转为Object类型

2:直接使用wx.getStorageSync读取Object类型

两个方法读取结果不一致

以下图片为同一个同时打印1,2方法的结果


重现步骤:

1:进入游戏,使用wx.setStorageSync存储一个复杂对象,然后立即杀掉游戏进程

3:重新进入游戏分别用1,2方法读取数据

补充一下问题:

测试环境是安卓的真机(小米6,iphone6s 上都遇到了)

PC端无法复现这个问题。


我们是要存储一个Json object,里面包含一个叫coin的字段和一个叫weaponData的Array。

储存的API调用完成以后,立刻(约5秒内)退出游戏,然后重新从storage加载这个数据

发现:coin数据正确,但是weaponArray数据和存储的不一致(看起来像是存储失败)


于是我们换了一个测试思路,我们不直接存储object, 而是在存储前先stringfy为一个字符串,然后直接存储字符串。

照样立刻退出游戏,然后重新从storage加载这个字符串

发现:一切数据正确。


截图中想表达的意思就是,字符串内容和json object的内容不一致。

最后一次编辑于  2019-12-18
回答关注问题邀请回答
收藏

2 个回答

  • 小游戏运营专员 - 宏
    小游戏运营专员 - 宏
    2019-12-19

    你好,能否提供个可复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    2019-12-19
    有用
    回复
  • 射手座
    射手座
    2020-01-14

    我也碰到这个问题,数组有问题

    2020-01-14
    有用
    回复
登录 后发表内容
问题标签