收藏
回答

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

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

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

回答关注问题邀请回答
收藏

3 个回答

  •         
            
    02-27

    removeStorage() {

    wx.removeStorage({

    key: 'bookId',

    success: res => {

    console.log("删除了吗", res) // 删除Storage中的bookId并且执行成功

    wx.getStorage({

    key: 'bookId',

    complete: (res) => {

    console.log("getStorage中", res) // 获取Storage中的bookId信息,提示fail data not found"(找不到数据)

    },

    })

    wx.getStorageInfo({

    success: (res) => {

    console.log("查看本地存储所有信息:", res) // 获取Storage所有信息还是有keys: ["booksID"]

    }

    })

    }

    })

    }


    02-27
    有用
    回复 1
    •         
              
      02-27
      getStorage和getStorageInfo获取到的本地存储数据存在问题
      02-27
      回复
  • 2019-09-01

    我这里也有这样的问题。iPhone7


    2019-09-01
    有用
    回复
  • 是小白啊
    是小白啊
    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)
登录 后发表内容