Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 使用reactJS和GraphQL获取实时数据的最佳实践_Node.js_Reactjs_Postgresql_Graphql_React Apollo Hooks - Fatal编程技术网

Node.js 使用reactJS和GraphQL获取实时数据的最佳实践

Node.js 使用reactJS和GraphQL获取实时数据的最佳实践,node.js,reactjs,postgresql,graphql,react-apollo-hooks,Node.js,Reactjs,Postgresql,Graphql,React Apollo Hooks,我将react与graphQL结合使用,作为数据库,我使用PostgreSQL 因此,我在主屏幕上有一个记录列表,我想在数据库中有新记录时更改它。我的数据库可以从不同的UI更新。那么,当我的DB记录发生变化时,更新FE而不重新加载的最佳实践是什么呢 作为一个加入者,我使用react apollo hooks获取graphQL数据 我尝试的是: web套接字 参考链接: 有没有其他更好的方法从BE获取最新数据 编辑:我知道有很多方法可以做到这一点,但我想知道最好的方法。就像按照行业标准

我将react与graphQL结合使用,作为数据库,我使用PostgreSQL

因此,我在主屏幕上有一个记录列表,我想在数据库中有新记录时更改它。我的数据库可以从不同的UI更新。那么,当我的DB记录发生变化时,更新FE而不重新加载的最佳实践是什么呢

作为一个加入者,我使用
react apollo hooks
获取graphQL数据

我尝试的是:

  • web套接字
参考链接:

有没有其他更好的方法从BE获取最新数据


编辑:我知道有很多方法可以做到这一点,但我想知道最好的方法。就像按照行业标准的方式一样。

尝试React查询,它还可以与REST API和Graphql一起使用。您可以对数据库进行变异,并使以前提取的数据无效,以从后端获取更新的数据。此过程称为使过时数据无效

const [mutate] = useMutation(addTodo, {
   onSuccess: () => {
     queryCache.invalidateQueries('todos')
     queryCache.invalidateQueries('reminders')
   },
 })
它是这样的,一旦您执行函数addTodo(该函数改变了数据库),在成功执行时,React query将使以前从数据库中提取的TODO和提醒无效,并在后台从数据库中重新提取它们

以下是文档的详细信息