Another post分享了如何取消订阅的示例,其中Apollo docs不。 Apollo 文档确实提到了 subscribeToMore 返回的内容......
subscribeToMore
: A function that sets up a subscription.subscribeToMore
returns a function that you can use to unsubscribe.
这确实给出了提示。看一个例子会有所帮助。
问题
在useEffect()
内部使用@apollo/react-hooks
并返回subscribeToMore
的结果,是这样的吗取消订阅组件卸载?
const { data, error, loading, subscribeToMore } = useQuery(GET_DATA)
useEffect(() => {
const unsubscribe = subscribeToMore(/*...*/)
return () => unsubscribe();
}, [])
最佳答案
卸载组件时,应为您取消订阅任何关联的订阅。您不必手动管理它,除非您想在此之前取消订阅。
关于reactjs - 如何使用 useQuery 和 subscribeToMore 取消订阅,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60515463/