Estoy obteniendo algunos datos usando Apollo useQuery en un componente de Profile que es un componente principal.
const { data: postsData, error: postsError } = useQuery(GET_POSTS_FROM_USER, { variables: { userId: userIdFromRouter } }) Inside Profile Tengo un navegador con una opción para abrir un cuadro de diálogo para crear una nueva publicación que se encuentra en la parte superior del componente en un modal
{!showPosts ? (<ProfilePageNavHeader currentUser={currentUser.currentUser} userIdFromRouter={userIdFromRouter} />) : null}ProfilePageNavHeader
<nav className={profileHeaderStyles.nav}> <div> <h2>{currentUser.userName}</h2> </div> <ul> <li> <MdOutlineAddBox onClick={handleShowNewPostModal} /> </li> <li> <FiLogOut onClick={handleUserLogOut} /> </li> </ul> {newPostModal ? ( <FileUpload open={newPostModal} handleClose={handleCloseNewPostModal} /> ) : null} </nav> const handleShowNewPostModal = () => { setNewPostModal(true); }; El problema que tengo es que cada vez que handleShowNewPostModal veo que useQuery se está recuperando. Sé que hay una opción de skip , pero no estoy seguro de si esto se aplica a mi caso de uso específico, porque necesito que los datos se obtengan una vez, pero luego no volver a obtenerlos si abro ese modal, y necesito los datos que ya han sido buscado para seguir sentado allí. Cualquier ayuda sería genial gracias.