我正在使用离子框架在我的应用上实现通知功能。它的工作方式是我向一个返回一组通知的rest api发出get请求。但这似乎太多了,因为我必须每次都向同一个列表发出请求,所以我想将第一个请求存储在本地变量中(使用ngStorage)并在下一个请求中拉出新项目。这是解决方案吗?可能?如果是这样,你能举例说明如何进行这个
/ *示例1 Json的第一个请求,我将列表存储在$ localStorage变量中* /
[{id:1, notification:'notif A'},
{id:2, notification:'notif B'}]
/ *对于第二个请求,我只想推送get' id:3'到我的$ localStorage这怎么可能* /
[{id:1, notification:'notif A'},
{id:2, notification:'notif B'},
{id:3, notification:'notif C'}]
答案 0 :(得分:2)
最好让服务器只传递新通知,前提是您可以在请求中传递一些信息,说明您已经拥有的最新通知(例如,您的请求可以包含查询参数,如{{1} },您的服务器用来过滤旧的或旧的通知;这假设last_id=<id>
的值与通知年龄相关;还有其他服务器端解决方案。)
如果您无法控制服务器,最快的方法就是用新列表替换整个列表。我不认为通过找到增量和增量可以得到任何东西。添加它们。
但是,如果由于其他原因需要增量(例如,您需要根据其内容对每个新通知运行某些操作),那么一个选项是将通知存储为对象而不是数组:
id
然而,只有你真的需要为这些增量做点事情;如果你需要做的只是让你的列表保持最新,只需更换旧的。