Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

147
Visualizações
La modificación de caché de Apollo no elimina el campo del elemento almacenado en caché cuando se devuelve el objeto centinela DELETE

Estoy tratando de eliminar un campo en el elemento almacenado en caché usando el método cache.modify como se describe en la documentación oficial .
Según los documentos de la API, debo devolver el objeto centinela DELETE de la función de resolver que refleja el tipo de campo que quiero eliminar.

Lo estoy haciendo, pero el campo obligatorio aún existe en el elemento almacenado en caché después de la ejecución.
¿Como es posible? ¿Me acabo de perder algo?

Aquí está el ejemplo de código:

Tengo este artículo en el caché.

 { __typename:"Module" id:"l_14" length:223 title: "Chris Hadfield" }

y quiero eliminar el campo de title , así que traté de usar cache.modify como se describe en los documentos. Así es como se ve:

 client.cache.modify({ id: 'Module:l_14', fields: { title(data, { DELETE }) { return DELETE; }, }, });

Pero después de la ejecución, el elemento del Módulo apropiado en el caché no cambió. El campo de title no se había eliminado. Se ve exactamente como era antes de la ejecución:

 { __typename:"Module" id:"l_14" length:223 title: "Chris Hadfield" }

Entonces, ¿por qué no se eliminó el campo de title incluso cuando repliqué todos los pasos del ejemplo de documentación?

PD: no estoy seguro de si es relevante, probablemente no, pero por si acaso: este artículo no tiene una mutación directa, etc. en el esquema BE. Es solo un objeto anidado del padre. El esquema se ve así:

 type Track { id: ID! title: String! author: Author! thumbnail: String length: Int modulesCount: Int description: String numberOfViews: Int modules: [Module!]! } type Module { id: ID! title: String! length: Int }

¡Gracias por cualquier ayuda!

about 4 years ago · Santiago Trujillo
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda