我开始使用jsonRest而不是Memory来改变可以重建的所有小部件,比如我的应用程序中的filteringSelect和Dgrid。
在我修复了filteringSelect之后,用jsonRest替换了内存并测试它运行良好,我试着用它来存储/缓存。
测试显示缓存没有发生,当我搜索网络时,我得到了某人的回答:
这个问题告诉缓存不能使用filteringSelect,但我需要使用请求。 另一方面,“请求”立即请求数据,因此它不是一个选项。
你能给出正确的答案: 1.缓存是否与filteringSelect上的jsonRest一起使用? 2.我可以将dgrid与jsonRest一起使用并缓存吗?
谢谢
答案 0 :(得分:0)
虽然JsonRest
可以与Cache
一起使用(不管哪个小部件使用它),但要考虑的重要事项(邮件列表帖子指出的那个)是dojo/store/Cache
由于query
调用可以包含各种范围,过滤器和排序参数,因此不会将get
次调用缓存到商店,只会query
次调用。因此,我认为您不会使用您期望的Cache
。
如果您的服务没有大量记录,则另一种选择是使用dojo-smore's RequestMemory商店,这实际上是Memory
和JsonRest
之间的中间地带 - 它请求完整的数据集一次(尽管它在创建商店后立即请求它),但随后将整个集合存储在内存中以用于所有query
和get
调用。