Ich ändere einen Shopify Warenkorb mit Ajax, der Warenkorb wird erfolgreich geändert, aber um den aktualisierten Warenkorb anzuzeigen, muss der Benutzer die Seite aktualisieren. Ich möchte die Warenkorbänderungen OHNE eine Aktualisierung anzeigen.Update Shopify Warenkorb mit Ajax ohne Seitenaktualisierung
Ich bin mit der Ajax-api ganz gut, und ich kann hinzufügen und entfernen Artikel mit:
Shopify.addItem();
Shopify.removeItem();
Die große Arbeit, aber sie muss der Benutzer die Seite neu zu laden, das Neue sehen/Positionen geändert in ihrem Wagen. Kennen Sie eine Möglichkeit, den aktualisierten Warenkorb ohne Neuladen der Seite anzuzeigen?
So hat jeder das komplette Bild, hier ist mein Code:
function poll(products) {
$.ajax({
url: "/apps/proxy",
data: {products: products},
type: "GET",
dataType: "json",
complete: setTimeout(function()
{cartAdd(); poll(products)}, 15000),
success: function(data) {
$.each(data, function(incoming_key, incoming_value){
Shopify.getCart(function(cart){
$.each(cart.items, function(cart_key, cart_value){
if(cart_value.variant_id == incoming_value.id_to_remove){
Shopify.addItem(incoming_value.variant_id, incoming_value.quantity);
Shopify.removeItem(incoming_value.id_to_remove);
console.log("some reason the incoming id is null or maybe not " + incoming_value.variant_id);
}
else if(cart_value.variant_id == incoming_value.variant_id && cart_value.quantity != incoming_value.quantity){
Shopify.changeItem(cart_value.variant_id, incoming_value.quantity);
}
});
});
});
},
});
}