首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用LocalStorage API来持久化Miragejs db

使用LocalStorage API来持久化Miragejs db
EN

Stack Overflow用户
提问于 2021-05-13 21:07:35
回答 1查看 300关注 0票数 3

此页上阅读海市蜃楼的文档时,它说:

在每次重新加载浏览器时,幻影都会重置其状态,这可能是一把双刃剑,但通常是您在开发和测试中想要的。(如果要向幻影添加临时持久性,可以使用localStorage。)

但是,我似乎在任何地方都找不到任何关于如何为db持久性实际设置本地存储的文档或示例。

是否有人对此有任何经验,或了解我可以参考的一些代码示例或演练?

EN

回答 1

Stack Overflow用户

发布于 2022-09-28 23:44:48

一个粗略的解决方案是在每次修改之后转储db:

代码语言:javascript
复制
const server = createServer(...);

// https://miragejs.com/api/classes/server/#pretender
server.pretender.handledRequest = function(verb) {
  if (verb.toLowerCase() !== 'get' && verb.toLowerCase() !== 'head') {
    localStorage.setItem('db', JSON.stringify(server.db.dump()));
  }
};

并在服务器创建时还原它:

代码语言:javascript
复制
const dbData = localStorage.getItem('db');

if (dbData) {
  // https://miragejs.com/api/classes/db/#load-data
  server.db.loadData(JSON.parse(dbData));
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67526264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档