2***@qq.com
2***@qq.com
  • 发布:2025-01-09 10:26
  • 更新:2025-01-09 10:32
  • 阅读:143

【报Bug】uni.getStorageSync获取不到数据

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 11

HBuilderX类型: 正式

HBuilderX版本号: 4.45

手机系统: Android

手机系统版本号: Android 10

手机厂商: vivo

手机机型: S7

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

先加载add,点击按钮后打开drawroute,绘制完成后与点击完成按钮调用uni.setStorageSync储存数据,然后点击返回按钮回到上一页,在上一页的onshow里调用uni.getStorageSync,获取不到数据

预期结果:

能够获取到数据

实际结果:

无法获取,找不到数据

bug描述:

先加载add,点击按钮后打开drawroute,绘制完成后与点击完成按钮调用uni.setStorageSync储存数据,然后点击返回按钮回到上一页,在上一页的onshow里调用uni.getStorageSync,获取不到数据

2025-01-09 10:26 负责人:无 分享
已邀请:
套马杆的套子

套马杆的套子 - 没有解决不了的问题,只有解决不完的问题

我刚试了下,用官方demo没发现问题
你可以新建个项目,用官方demo里试试,看好使不

  • 2***@qq.com (作者)

    我是在renderjs里回调server层的函数进行存储,名字,存储我都验证过 没问题,就找不到原因

    2025-01-09 10:35

  • 2***@qq.com (作者)

    我在其他地方使用都没问题 只有这一个地方取不到数据

    2025-01-09 10:57

  • 套马杆的套子

    回复 2***@qq.com: 你在存的地打个日志,看key 跟value都有值么,存完后立马再取你看看有不

    2025-01-09 11:01

  • 2***@qq.com (作者)

    回复 套马杆的套子: 有值的

    2025-01-09 11:07

  • 套马杆的套子

    回复 2***@qq.com: 我看你unload的时候是有清么?看看界面里哪有清的,然后新界面别在onshow里取,或者延期点时间再取试试呢,

    2025-01-09 11:09

  • 2***@qq.com (作者)

    回复 套马杆的套子: 只有这一个地方有清,调用uni.navigateBack之后就取不到了

    2025-01-09 11:23

  • 2***@qq.com (作者)

    回复 套马杆的套子: uni.navigateBack({

    success: () => {

    // 回退成功后执行的代码

    let routedata = uni.getStorageSync("routeDetail");

    console.log("drawroute.vue保存航迹取值Back", routedata)

    }

    });

    2025-01-09 11:23

  • 套马杆的套子

    回复 2***@qq.com: 换成uni.navigateTo试试呢

    2025-01-09 11:26

  • 2***@qq.com (作者)

    回复 套马杆的套子: 可以获取

    2025-01-09 12:13

  • 2***@qq.com (作者)

    回复 套马杆的套子: 那uni.navigateBack为什么就获取不到了呢?

    2025-01-09 13:33

  • 套马杆的套子

    回复 2***@qq.com: 还是因为你的onUnload里的问题,,因为navigateTo是不触发onUnload的,navigateBack会触发。所以问题就在onUnload里了

    2025-01-09 16:04

  • 2***@qq.com (作者)

    回复 套马杆的套子: onload里的清除是上一页的,不是调用navigateBack的页面的,而且我之前试了屏蔽清除代码,也不行

    2025-01-09 16:53

  • 2***@qq.com (作者)

    回复 套马杆的套子: 我将所有的uni.clearStorageSync全都屏蔽掉,然后就可以读取了,但是有的key是别的值,跟这个并不相同,为什么会有影响?

    2025-01-09 17:22

  • 2***@qq.com (作者)

    回复 套马杆的套子: 我又试了,确实是onload里代码的影响,但是onload里的key和无法获取到的数据的key不是同一个

    2025-01-09 17:31

要回复问题请先登录注册