我正在浏览 Apollo React hooks 的文档。
并看到有两个查询钩子可供使用,其中是useQuery
and useLazyQuery
我正在读这一页。https://www.apollographql.com/docs/react/api/react/hooks/ https://www.apollographql.com/docs/react/api/react/hooks/
有人可以解释一下它们之间有什么区别以及在什么情况下应该使用它。
When useQuery
由组件调用,它随后触发查询。
但当useLazyQuery
被调用后,后续不会触发查询,而是返回一个可用于手动触发查询的函数。
此页面对此进行了解释:https://www.apollographql.com/docs/react/data/queries/#manual-execution-with-uselazyquery https://www.apollographql.com/docs/react/data/queries/#manual-execution-with-uselazyquery
当 React 挂载并渲染一个调用该组件的组件时useQuery
hook,Apollo Client 自动执行指定的查询。
但是,如果您想要执行查询来响应不同的事件(例如用户单击按钮),该怎么办?
这useLazyQuery
hook 非常适合执行查询来响应组件渲染以外的事件。
这个钩子的作用就像useQuery
,但有一个关键例外:当useLazyQuery
被调用时,它不会立即执行其关联的
询问。
相反,它在结果元组中返回一个函数,您可以在准备好执行查询时调用该函数。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)