Hook useProduct não trás as coleções de produto

Preciso saber em quais coleções um produto está. Para isso estou usando o hook useProduct que dentro dele tem productClusters que em teoria tem as coleções em que o produto se encontra. Mas observando bem encontrei casos em que o produto está em uma coleção, ela está ativa e mesmo assim não aparece em productClusters. Há alguma outra forma de pegar as coleções de um produto?

1 Like

Olá @hercobulus!

Só expandindo um pouco o contexto da sua pergunta, você está tentando buscar essa informação dentro de uma página de produto, certo? Páginas de produto sempre vão estar com o ProductContext em volta de todo o conteúdo da página, o que irá fornecer todos os dados que você encontra quando utiliza o hook useProduct.

Os dados que estão acessíveis no ProductContext vem do resultado de uma query product, resolvida pelo vtex.search-graphql. Se os dados de productClusters não estão no contexto, imagino que a query na loja não está retornando nada para esse campo.

De fato, nos dados que o ProductContext possue, devem estar as coleções de um produto, já que elas são configuradas como ProductClusters. E todos os produtos que estão em uma dada coleção deveriam estar com essa informação atualizada. Para entender porque em alguns produtos, não consta essa informação, precisamos de mais informações sobre os produtos e como as coleções foram configuradas. Você pode nos dar exemplos?

Respondendo a sua pergunta sobre outra forma de pegar as coleções de um produto, até onde eu sei, não temos outra query que poderia te ajudar aqui. O que você poderia tentar é fazer a query product, pedindo apenas o campo que você quer, direto no seu componente. Mas em teoria você teria o mesmo resultado que estamos tendo no ProductContext.