技术不行但人小帅 2023-02-22 00:49 采纳率: 59.7%
浏览 20
已结题

uniapp数据相关的一些问题?

是这样的,由于地区较偏僻,信号不好,目前做的微信小程序功能是希望在开阔地带下一次性将数据获取成功,然后再在离线的状态下从这些数据里增删改查,随后操作完毕后再返回开阔地带上传更新,
希望就是:小程序能获取一次数据后脱机操作,
那么我的思路是,
一次性获取所有数据,暂存在本地缓存中,通过这些缓存修改后暂存(微信小程序似乎会保存这些修改后的数据状态(好像退出微信小程序后再打开似乎小程序还会在当前这些页面?如果不是该怎么做)? 虽然后再返回开阔地带上传到数据库,

请问这个逻辑有更好一点的?该怎么做会更友好?讲讲大概思路?

  • 写回答

3条回答 默认 最新

  • CodeBytes 2023-02-22 08:52
    关注

    该回答引用ChatGPT

    您的思路是可行的,即通过一次性获取所有数据,将其暂存在本地缓存中,并在离线状态下对其进行增删改查。微信小程序确实会在某些情况下保存应用程序状态(例如,在小程序切换到后台时),但这并不是一种可靠的方法来保存应用程序数据。

    为了实现更可靠的数据缓存和同步逻辑,您可以考虑使用本地数据库或缓存机制,例如使用 IndexedDB 或 Web Storage API 来存储数据,并使用 Web Workers 或 Service Workers 在后台更新数据。

    以下是一个可能的实现思路:

    1、在小程序首次打开时,从服务器获取所有数据,并将其存储在本地数据库或缓存中。您可以使用 IndexedDB 或 Web Storage API 等浏览器提供的本地存储机制来实现这一点。

    2、当用户在离线状态下修改数据时,将其暂存到本地数据库或缓存中,而不是直接提交到服务器。您可以通过编写一些 JavaScript 代码,将用户的修改操作保存到本地存储中。

    3、在应用程序重新联机时,将本地缓存中的修改操作上传到服务器,以更新服务器上的数据。您可以使用 Web Workers 或 Service Workers 来处理此操作,并在后台更新数据,以确保数据同步和应用程序响应性。

    4、在用户每次打开应用程序时,从本地数据库或缓存中加载数据,并在应用程序启动时对数据进行更新。这可以确保用户始终能够访问最新的数据,即使他们处于离线状态。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 2月22日
  • 已采纳回答 2月22日
  • 创建了问题 2月22日

悬赏问题

  • ¥15 phython如何实现以下功能?查找同一用户名的消费金额合并—
  • ¥15 ARIMA模型时间序列预测用pathon解决
  • ¥15 孟德尔随机化怎样画共定位分析图
  • ¥18 模拟电路问题解答有偿速度
  • ¥15 CST仿真别人的模型结果仿真结果S参数完全不对
  • ¥15 误删注册表文件致win10无法开启
  • ¥15 请问在阿里云服务器中怎么利用数据库制作网站
  • ¥60 ESP32怎么烧录自启动程序,怎么查看客户esp32板子上程序及烧录地址
  • ¥50 html2canvas超出滚动条不显示
  • ¥15 java业务性能问题求解(sql,业务设计相关)