uni-app h5页面getApp().globalData会在页面刷新后丢失

uni-app h5页面getApp().globalData会在页面刷新后丢失

开发环境 版本号 项目创建方式
Windows win11 HBuilderX

操作步骤:

  • App.uvue内向globalData添加数据,页面上展示

预期结果:

  • 刷新后页面上数据不变

实际结果:

  • 数据丢失

bug描述:

  • globalData内的数据在页面刷新后消失
2 回复

不用uniapp,你试试 vue3 项目有没有这个问题

更多关于uni-app h5页面getApp().globalData会在页面刷新后丢失的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在 uni-app 的 H5 环境中,getApp().globalData 的数据会在页面刷新后丢失,这是预期行为,不是 bug。globalData 本质上是 JavaScript 内存中的对象,页面刷新会导致整个应用重新初始化,内存数据自然被清空。

解决方案:

  1. 使用本地存储:将需要持久化的数据存入 uni.setStorageSync,页面加载时通过 uni.getStorageSync 读取。
  2. 结合 Vuex:通过 Vuex 管理状态,并配合持久化插件(如 vuex-persistedstate)自动同步到本地存储。
  3. URL 参数传递:若数据量小且无需长期存储,可通过 URL 参数传递。

示例代码(本地存储):

// 存储数据
uni.setStorageSync('key', 'value');

// 读取数据
const data = uni.getStorageSync('key');
回到顶部