Adicionar o mesmo attachment a mais de uma unidade de um item
klzns opened this issue · 6 comments
Tornar possível adicionar o mesmo attachment para um item com mais de uma unidade.
Ex:
Adicionar 10 canecas ao carrinho
Adicionar customização com texto "Minha Empresa" aos 10 itens
@BrenoC isso é uma funcionalidade para as próximas 2 semanas ou levará mais tempo?
@caljp13 Provavelmente mais tempo.
Alguma novidade sobre isso?
Preciso adicionar o mesmo anexo a vários produtos ao mesmo tempo. Já tentei fazer várias instâncias do checkout para fazerem todas as requisições paralelamente, porém, no fim, só um produto fica com anexo, embora todas as requisições retornem 200.
oi, @Alvimm, sim, já é possivel fazer isso, acredito que podemos melhorar a documentação:
https://github.com/vtex/vtex.js/tree/master/docs/checkout#additemattachmentitemindex-attachmentname-content-expectedorderformsections-splititem
Existe uma novo parametro na funcao chamado splitItems
, caso vc passe como false
, ele irá aplicar o attachment a todos os items ao inves de apenas um.
Poderia tentar usar essa opção com false
e ve se consegue fazer o que precisa?
Pull requests com melhorias a documentação tambem são bem vindos
Importante lembrar que o updateItems
também recebeu esse parametro:
https://github.com/vtex/vtex.js/tree/master/docs/checkout#updateitemsitems-expectedorderformsections
Então caso atualize a quantidade do item após adicionar o attachment, lembrar de passar esse parametro como false
.
O exemplo da doc é o seguinte:
vtexjs.checkout.addItemAttachment(itemIndex, attachmentName, content, null, false)
Não entendi bem o que seria o splitItem, pq a doc diz uma coisa e vc disse que "caso vc passe como false, ele irá aplicar o attachment a todos os items ao inves de apenas um."
Da forma que eu entendi, são duas informações diferentes. Também não entendi o sentido de aplicar a todos os items, sendo que na chamada da função eu tenho que me referir a um itemIndex
em específico.
Executei a função com o splitItems = false
, passando o itemIndex = 0
(já que tinha que passar um) e aconteceu o esperado: aplicou-se somente ao 0.