uniapp setStorageSync干扰showToast的显示?

最近在使用 uniapp 的时候发现,只要是使用了 uni.getStorageSync 或者 uni.setStorageSync ,其后面的 showToast就无法显示出来,甚至之前的 showToast 也会一闪而过。
请教这是为什么?

阅读 1.5k
1 个回答

uni.setStorageSync或uni.getStorageSync的同步操作导致UI线程阻塞有关,你可以参考一下下面的处理与实现,看看能不能解决你的问题。

async function saveDataAndShowToast() {
  try {
    await uni.setStorage({
      key: 'your_key',
      data: 'your_data',
    });

    uni.showToast({
      title: '数据已保存',
      icon: 'success',
      duration: 2000,
    });
  } catch (error) {
    console.error('保存数据出错:', error);
    uni.showToast({
      title: '保存数据出错',
      icon: 'none',
      duration: 2000,
    });
  }
}

saveDataAndShowToast();
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题