Carrinho com valores errados

No computador, quando se coloca o mouse sobre o “Carrinho” abre um resumo do que tem no carrinho. Mesmo tendo 2 produtos de cada, no carrinho aparece o valor de apenas 1, e o valor total do carrinho aparece certo. Fica muito estranho! Não tem como fazer os itens no carrinho aparecerem com o valor final, considerando a quantidade de cada item?
Na imagem anexada tem um exemplo de um carrinho com 2 itens, com 2 produtos de cada. Esquisito!

1 curtida

Bom dia! Na verdade, está correto.
A modal do carrinho é para funcionar exatamente assim! No caso o valor mostrado depois do item, representa o valor da unidade. Já o valor destacado, representa toda a quantidade adicionada, sendo ele, o valor total.

Então, esse “modal do carrinho”, é simplesmente um resumo da compra, assim, o cliente consegue ter uma referência de quanto está gastando. Para um carrinho mais detalhado, o cliente deve acessar o próprio carrinho (se quiser consegue colocar a quantidade de produtos, agora não tem como mudar o valor total).

2 curtidas

mudando a função da LI, é possível informar a quantidade e o total da quantidade, que ficará uma informação, ao meu ver, mais coerente.

image

1 curtida

Assim ficaria show.
Só teria de manter o somatório total do carrinho.

sim, vi isso, mas eu nao fiz nada e já não aparece aqui, mas agora está aparecendo novamente

image

deixando mais compacto.

image

Blz.
Mas este teu código não faz a multiplicação da quantidade pelo valor unitário, nem faz informar a quantidade, como aparece na imagem que apresentaste.
Qual o código para fazer o que tu apresentou na última imagem?
Obrigado, Leo!

Código Completo!

<style>
.carrinho-interno .imagem-produto {
    width: 60px;
    height: 60px;
}

.carrinho-interno li {
    padding: 0 10px;
}
</style>
<script>
$(function(){
	window.atualizarCarrinhoAsync = function (e) {
		CARRINHO_PRODS = [];
		if (e && e.items && e.items.length && $(".minicart-placeholder").length) {
			qtd_prods_carrinho = e.items.length;
			var I = $(".minicart-placeholder:first").clone()
			  , R = I.find(".carrinho-interno");
			R.html(R.html().replace(/--CARRINHO_QUANTIDADE--/g, e.items.length).replace(/--CARRINHO_TOTAL_ITENS--/g, formataFloatToBRL(e.totals.items)).replace(/produto no carrinho/g, 1 < e.items.length ? "produtos no carrinho" : "produto no carrinho"));
			R = I.find(".carrinho-interno .minicart-item-modelo");
			for (i = 0; i < qtd_prods_carrinho; i++) {
				var d = e.items[i];
				CARRINHO_PRODS.push(d.id);
				d.parentId && CARRINHO_PRODS.push(d.parentId);
				var r = R.clone();
				r.html(r.html().replace(/--PRODUTO_PRECO_DE--/g, formataFloatToBRL(d.quantity * d.price.listPrice)).replace(/--PRODUTO_PRECO_POR--/g, formataFloatToBRL(d.quantity * d.price.sellingPrice)).replace(/data-href="--PRODUTO_URL--"/g, 'href="' + d.url + '"').replace(/--PRODUTO_IMAGEM--/g, d.images[0] && d.images[0].path || "img/produto-sem-imagem.gif").replace(/--PRODUTO_NOME--/g, d.name + ' - (Qtd: ' + d.quantity +')').replace(/--PRODUTO_SKU--/g, d.sku)).removeClass("minicart-item-modelo");
				0 < r.find(".imagem-produto img").attr("data-src").indexOf("produto-sem-imagem") ? r.find(".imagem-produto img").attr("src", r.find(".imagem-produto img").attr("data-src").replace("/64x64/", "/production/static/")) : r.find(".imagem-produto img").attr("src", r.find(".imagem-produto img").attr("data-src"));
				d.price.promotionalPrice || (r.find(".preco-produto .preco-venda").remove(),
				r.find(".preco-produto .preco-promocional").addClass("titulo"));
				I.find(".carrinho-interno > ul").append(r)
			}
			R.remove();
			$(".carrinho-interno-ajax:first").html(I.find(".carrinho-interno"));
			$(".carrinho-interno-ajax:not(:first)").html($(".carrinho-interno-ajax:first").html())
		} else
			qtd_prods_carrinho = 0;
		atualizarCarrinhoBarra();
		produtosCarrinho()
	}

	carregarMinicart(true)
})
</script>

Obrigado, Leonardo.
Não sei o que posso ter feito errado. Colei o código inteiro, como você postou, no CSS mas não funcionou, não mudou nada.

boa noite,
o código do @Leonardo_Vicentini_F tem que ser inserido em HTML.

1 curtida

Perfeito!
Agora funcionou!
Obrigado!

1 curtida