我在MongoDB中有一个仿制药数据库,里面有大约3500份文件。我想使用药品名称和品牌名称在自动完成输入字段中的反应网络应用程序。
数据可能如下所示:
{
"_id": {
"$oid": "5ed9bf1087263e1ef3d65288"
},
"name": "Ethamsylate + Mefenamic acid",
"brands": [
{
"name": "STOP-MF",
"package": "Tablet",
"strength": " ",
"price": "120.00"
},
{
"name": "SYLATE-M 500",
"package": "Tablet",
"strength": " ",
"price": "156.00"
},
],
}数据不会经常更改,所以我希望在初始加载时将其缓存在客户端。我已经在谷歌上搜索过了。我发现的是:
我还没有在浏览器中找到很多关于其他存储选项的信息。感谢所有的帮助!
尝试了SWR,但每次我重新加载页面时都会发出HTTP请求,但不能这样做,因为请求需要5-8秒才能获取数据,因此我希望以某种方式在浏览器中本地存储数据
发布于 2020-06-09 04:07:11
你试过swr了吗?它可以帮助您在客户端缓存数据:D
发布于 2020-07-06 21:38:18
为每个新类型的字符发出HTTP请求是错误的。
它并不总是不好的,它取决于您的用例。你会说谷歌搜索实现得不好吗?因为你打字时它会发出请求吗?不完全是。您也可以使用节流阀,并在一定程度上限制请求的数量。但是,如果您需要脱机访问,而且您的DB相对较小,那么当然还有其他选项。
IndexedDb提供无限的存储,但是API相当复杂。
你试过用包装纸包装它吗?就像https://github.com/dfahlander/Dexie.js适合你一样?
https://stackoverflow.com/questions/62274830
复制相似问题