En mi situación actual, uso Apollo useQuery para obtener un usuario y sus publicaciones.
Las publicaciones se representan en una vista de resumen y en una vista detallada. la vista detallada se encuentra encima de la vista de resumen y su visibilidad está controlada por una parte del estado.
const { data: userData, error: userError } = useQuery(GET_USER_BY_ID, { // the data fetch variables: { userId: getUserId(), } }) const [showPosts, setShowPosts] = useState(false) // controls toggle between views el problema que tengo es que cada vez que el estado de showPosts cambia, el componente vuelve a renderizarse y useQuery se vuelve a ejecutar. que no quiero. Ya tengo todos mis datos, solo quiero renderizar html sin volver a presionar el servidor hasta que lo necesite. ¿Cuál es una posible solución a mi problema?
Marque skip param, puede hacer algo como esto:
const { data: userData, error: userError } = useQuery(GET_USER_BY_ID, { // the data fetch variables: { userId: getUserId(), skip:!showPosts } })o usa useLazyQuery