uniapp中OnShow获取缓存

点击查看代码
function getStorage(key) {
  return new Promise((resolve, reject) => {
    uni.getStorage({
      key: key,
      success: (res) => {
        resolve(res.data);
      },
      fail: (err) => {
        reject(null); // 修改这里,如果失败了,返回null
      }
    });
  });
}

onShow(async (e) => {
  try {
    // 使用Promise.all同时获取info和yjtoken
    const [info, yjtoken] = await Promise.all([
      getStorage('info'),
      getStorage('yjtoken')
    ]);
    
    // 只在这里设置loginShow.value的值,这样就可以避免先设为true
    if (info && yjtoken) {
      app.globalData.info = info;
      interInfo.value = info;
      loginShow.value = false; // 如果都有值,不显示登录
    } else {
      loginShow.value = true; // 如果任何一个没有值,显示登录
    }
  } catch (error) {
    console.error('Error getting storage items:', error);
    // 出错时,可能需要显示登录,也可能需要其他错误处理
    loginShow.value = true;
  }
});

posted @   jialiangzai  阅读(57)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!

喜欢请打赏

扫描二维码打赏

微信打赏

点击右上角即可分享
微信分享提示