Przegląd
Koszyk jest przechowywany w localStorage przeglądarki i utrzymuje się między przeładowaniami strony. Wszystkie operacje na koszyku są synchroniczne i natychmiast aktualizują stan lokalny.
Obiekt komerza jest dostępny globalnie po dołączeniu skryptu. Wywołaj
komerza.init('twoje-id-sklepu') przed użyciem innych metod.
Dodawanie produktów
Dodaj wariant produktu do koszyka z określoną ilością.
komerza.addToBasket(productId, variantId, quantity);
Parametry
Unikalny identyfikator produktu
Unikalny identyfikator wariantu produktu
Ile produktów dodać (domyślnie 1, jeśli nie podano)
Przykład
// Dodaj 2 egzemplarze konkretnego wariantu produktu
komerza.addToBasket("prod_abc123", "var_xyz789", 2);
// Obsługa przycisku dodania do koszyka
document.getElementById("add-to-cart").addEventListener("click", () => {
const productId = "prod_abc123";
const variantId = document.getElementById("variant-select").value;
const quantity = parseInt(document.getElementById("quantity").value) || 1;
komerza.addToBasket(productId, variantId, quantity);
alert("Dodano do koszyka!");
});
Wyświetlanie koszyka
Pobierz wszystkie produkty aktualnie znajdujące się w koszyku.
const items = komerza.getBasket();
Zwraca
Zwraca tablicę obiektów BasketItem:
interface BasketItem {
productId: string; // ID produktu
variantId: string; // ID wariantu
quantity: number; // Liczba produktów
}
Przykład
const basket = komerza.getBasket();
if (basket.length === 0) {
console.log("Koszyk jest pusty");
} else {
basket.forEach((item) => {
console.log(
`Produkt: ${item.productId}, Wariant: ${item.variantId}, Ilość: ${item.quantity}`,
);
});
}
Liczba produktów
Pobierz całkowitą liczbę produktów w koszyku (suma wszystkich ilości).
const count = komerza.getBasketItemCount();
Zwraca
Zwraca liczbę reprezentującą łączną ilość wszystkich produktów.
Przykład
function aktualizujOdznakeKoszyka() {
const count = komerza.getBasketItemCount();
document.getElementById("cart-count").textContent = count;
if (count > 0) {
document.getElementById("cart-badge").style.display = "block";
}
}
aktualizujOdznakeKoszyka();
Usuwanie produktów
Usuń wariant produktu całkowicie z koszyka.
komerza.removeFromBasket(productId, variantId);
Parametry
Przykład
function usunProdukt(productId, variantId) {
if (confirm("Usunąć ten produkt z koszyka?")) {
komerza.removeFromBasket(productId, variantId);
aktualizujWyswietlanieKoszyka();
}
}
Czyszczenie koszyka
Usuń wszystkie produkty z koszyka naraz.
Przykład
document.getElementById("clear-cart").addEventListener("click", () => {
if (confirm("Usunąć wszystkie produkty z koszyka?")) {
komerza.clearBasket();
aktualizujWyswietlanieKoszyka();
}
});
Kopia zapasowa i przywracanie
Twórz kopie zapasowe stanu koszyka i przywracaj je później. Przydatne do obsługi błędów płatności lub implementacji funkcji „zapisz na później”.
Tworzenie kopii zapasowej
const success = komerza.createBasketBackup();
Zwraca true, jeśli kopia zapasowa została pomyślnie utworzona.
Przywracanie kopii zapasowej
const success = komerza.restoreBasketFromBackup();
Zwraca true, jeśli kopia zapasowa została pomyślnie przywrócona.
Przykład
async function przejdzDoKasy() {
komerza.createBasketBackup();
try {
const order = await komerza.checkout(email, couponCode);
// Sukces - przekierowanie do kasy
} catch (error) {
// Przywróć koszyk w przypadku błędu
komerza.restoreBasketFromBackup();
}
}