收藏
回答

【加急bug】wx.removeStorage无法删除缓存(部分机型)

问题模块 框架类型 问题类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
API和组件 小程序 Bug wx.removeStorage 客户端 Android 6.6.7 2.2.2

目前真机测试中oppoR11S使用wx.removeStorage无法删除缓存,求速度解决

最后一次编辑于  2018-08-14  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

12 个回答

  • 是柿子啊
    是柿子啊
    2018-08-14

    你好,请提供一下出现问题的机型和微信版本,以及能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    2018-08-14
    赞同
    回复 11
    • 曾亮
      曾亮
      2018-08-14

      就几行代码的事情,一开始加入缓存:

      wx.setStorage({
            key: 'abc',
            data: '呵呵',
            success: function (res) {
              console.log(res)
              let ressss = wx.getStorageInfoSync();
              console.log(ressss)
            }
          })

      此时打印出来ressss.keys里面有abc。

      然后

      wx.removeStorage({
            key: 'abc',
            success: function (res) {
              console.log('有个鬼用')
              let ressss = wx.getStorageInfoSync();
              console.log(ressss)
            }
          })

      这里面resss.keys里面还有abc。。。。

      但是有趣的是,如果中间加上一些东西,如下面所示

      wx.removeStorage({
            key: 'abc',
            success: function (res) {
              console.log('有个鬼用')
              wx.getStorage({
                key: 'key',
                complete: function (ress) {
                  console.log(ress)
                  let ressss = wx.getStorageInfoSync();
                  console.log(ressss)
                }
              })
            }
          })

      我getStorage之后去getStorageInfoSync,里面的keys中就没有abc了

      2018-08-14
      赞同
      回复
    • 是柿子啊
      是柿子啊
      2018-08-14回复曾亮

      你好,虽然我们这是可以直接复制进行粘贴,但是无法完全复原你的代码片段的细节,这不利于定位问题,忘谅解,这是使用代码片段的相关教程:https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

      2018-08-14
      赞同
      回复
    • 曾亮
      曾亮
      2018-08-14回复是柿子啊
      wx.removeStorage({
            key: 'abc',
            success: function (res) {
              console.log('有个鬼用')
              let resssss = wx.getStorageInfoSync();
              console.log(resssss)
              wx.getStorage({
                key: 'key',
                complete: function (ress) {
                  console.log(ress)
                  let ressssss = wx.getStorageInfoSync();
                  console.log(ressssss)
                }
              })
            }
          })

      就这么段代码,上面取到的还有abc,下面的就没有。没有其他的代码细节了,我把小程序代码全部删了

      2018-08-14
      赞同
      回复
    • 曾亮
      曾亮
      2018-08-15回复是柿子啊

      wechatide://minicode/6s8edGmU781A

      你要的代码片段。bug具体描述一下吧,删除缓存之后,如果用key值去取,是取不到这个值的,这个没问题。但是我的key值不是固定的,我需要使用getStorageInfo来获取缓存中所有key值,然后取出需要的进行遍历取值,然后在安卓真机(oppoR11S)上还出现getStorageInfo能取到两个相同的key值。

      2018-08-15
      赞同
      回复
    • 是柿子啊
      是柿子啊
      2018-08-15回复曾亮

      你好,问题未复现,请问是只有oppoR11S上出现次问题吗?有测试过其他的型号的手机吗?

      2018-08-15
      赞同
      回复
    查看更多(6)