aws appsync-angular混合移动应用程序

sqyvllje  于 2021-09-29  发布在  Java
关注(0)|答案(0)|浏览(148)

我正在做angular项目,我们也在用它来创建android应用程序。我们正在为此目的使用电容器。
我遇到了一个问题,那就是我已经实现了使用api网关的appsync资源,我的appsync与在线门户网站以及android应用程序一起工作。但我们也希望离线模式能够正常工作,目前,在变异中添加以下部分后

update : (cache, { data }) => 
{ 
 const gsquery = this.appSync.getDetailed(); 
 if(cache) { 
 const olddata = cache.readQuery({ query: gsquery }); 
 olddata.getDetailed = [ ...olddata.getDetailed.filter(item => item.ID !== myobject.ID), myobject ] 
 cache.writeQuery({ query: gsquery, data: olddata }); 
 }
}

如果我关闭android应用程序并再次打开它。。。然后,我会丢失在执行过程中写入的缓存中的更改
writequery({query:gsquery,data:olddata});
但如果我只是失去了互联网(不要关闭应用程序)在移动应用程序周围玩,它会正常工作。。然后连接互联网一段时间后,我的服务器更新了我在互联网关闭时添加的数据。。。但只有当互联网关闭并且我关闭移动应用程序时。。它会丢失所有更改。。
起初我认为这可能是因为angular使用WebView创建android应用程序时的工作方式,但我只会丢失缓存中的更改,不会丢失整个缓存,当互联网消失时,我仍然可以看到缓存中的所有记录,我关闭应用程序并再次打开它。
我使用的是fetchpolicy=networkonly(因为我没有使用watchquery),我使用的是angular8和capacular2
任何帮助都将不胜感激,我已大致搜索了所有内容。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题