我正在重构一个正在使用redux的express+react应用程序,我想切换到graphql (阿波罗),但是我有一些不太清楚的事情。
因此,一般的流程是GET请求获取数据(一个对象数组),然后存储在redux存储中,并使用分页的选择器并将其表示为一个列表。然后,用户可以编辑条目(在redux存储中修改条目),然后他可以“发布”从redux存储获取数据并调用POST端点。
我将如何在graphql中建模呢?我是否使用graphql查询分页(在DB中使用偏移量/限制)?然后,我如何能够修改内存中的条目并立即发布所有条目,完成编辑?
发布于 2020-07-01 09:36:05
在阿波罗一书中,这很简单:
将获取的数据存储在规范化缓存中(列表和项separately);
useQuery钩子获取数据(使用缓存client);
onChange/onSave事件调用突变函数(从useMutation钩子返回),将一个或多个记录数据(您想更新)作为变量传递;发送到API的
onCompleted处理程序中)更新本地缓存(writeQuery)或调用重取查询(通过从useQuery调用fn/处理程序),这两者都将强制使用更新的数据重命名组件;;
是的,分页可以使用查询变量,获取更多等等。
https://stackoverflow.com/questions/62670754
复制相似问题