大家好,我在 React 项目中使用 apollo graphql,我面临的问题是我的 useLazyQuery 方法在无限循环中被调用。
这是代码
import React,{ useEffect,useState,useCallback } from 'react'
import { useDispatch,useSelector } from 'react-redux'
import { GET_DATA } from '../../../../Graphql/query'
import { useMutation,useLazyQuery } from '@apollo/react-hooks'
export default function index() {
const id = useSelector(state => state.id)
useEffect(() => {
dispatch(setIsLoading(false))
if (id) {
getData({
variables: {
id: id
}
})
}
},[])
const [getData] = useLazyQuery(GET_DATA,{
fetchPolicy: 'no-cache',onError: err => {
},onCompleted: data => {
if (data) {
console.log(data)
}
}
})
return (
<section classname="journey">
</section>
)
}
所以在网络选项卡中,我看到 GET_DATA 查询在无限循环中被调用,希望有人帮助我,谢谢!