【发布时间】:2017-05-30 06:46:36
【问题描述】:
我有一个 React/Redux 应用程序,它与 API 进行大量通信,并处理来自数据库的大量很少更改的数据。为了减少流量和改进 UE,我现在想创建一个缓存机制,通过自动使用可用的最佳技术(从 IndexedDB 下降到 LocalStorage 等)在客户端存储数据。
我创建了一个cache 对象,它进行初始检查以确定存储机制(保存到engine 属性,因此检查只需要运行一次)。它还有一些基本方法save(key, value)和load(key),然后为最初确定的机制调用相应的函数。
缓存对象及其方法确实有效,但我想知道如何在应用程序加载时仅在我的主 index.js 中创建一次缓存,然后在我的操作中使用这个对象,而不是每次都重新创建另一个缓存对象?
顺便说一句:将缓存作为我的应用程序状态的一部分感觉是错误的,因为它实际上并不包含运行应用程序所需的大量数据(如果没有可用的缓存,则只能调用 API)。
我是否需要以某种方式将缓存注入到我的操作中?还是我需要在主 window 对象中创建一个全局/静态缓存对象?
感谢您对此问题的澄清和想法。
【问题讨论】:
标签: javascript node.js redux react-redux