Alpine JS로 Shopify 카트를 지우는 방법
3018 단어 alpinejsshopifyapijavascript
최신 버전의 Alpine JS(버전 3) 덕분에 이제 기본적으로 Alpine JS 스토어에 액세스할 수 있습니다! 🥳
Alpine JS Stores Documentation
즉, 특정 상태 관리(이 경우에는 Shopify 카트)를 위한 정보 소스를 생성할 수 있습니다.
assets/theme.js
또는 layouts/theme.liquid
에 배치할 "장바구니"라는 새 Alpine JS 상점을 만들어 보겠습니다.assets/theme.js
를 사용하는 경우 Alpine JS를 모듈로 가져와야 합니다.여기 카트용 Alpine JS 매장이 있습니다.
Alpine.store('cart', {
data: null,
clearCart() {
fetch('/cart/clear.js, { method: 'POST' })
.then((response) => response.ok && this.getCart())
},
getCart() {
fetch('/cart.js')
.then((response) => response.json())
.then((data) => this.data = data)
.catch((error) => console.error(error))
}
})
이것이 무엇을 하는지 분석해 봅시다.
ID
유형
설명
data
변하기 쉬운getCart
에서 설정된 모든 카트 데이터를 유지합니다.clearCart
기능카트를 비운 다음 완료되면
getCart
를 호출합니다.getCart
기능현재 장바구니를 가져와
data
변수에 저장합니다.당신이 가질 수 있는 한 가지 질문은 우리가 클리어 후 왜 우리가
getCart
에 전화를 하느냐는 것입니다. data
변수를 재설정할 수 있습니다.response.ok && this.cart = null
를 사용하여 이 작업을 수행하는 또 다른 접근 방식이 있지만 접근 방식은 사용자의 선택이며 둘 다 매우 빠릅니다.마지막 부분은 HTML입니다. 고맙게도 Alpine JS는 저장소를
$store
변수에 노출합니다. 따라서 다음 코드를 사용하여 장바구니를 비우는 버튼을 만들 수 있습니다.<button x-data type="button" @click="$store.cart.clearCart">Clear Cart</button>
그게 다야. 이제
$store.cart.clearCart
를 가져와 Shopify 스토어에서 장바구니를 비워야 하는 곳에 놓을 수 있습니다.장바구니 지우기 버튼이
form
내에 있는 경우 버튼에 type='button'
를 추가하여 양식 제출을 방지해야 합니다.장바구니 페이지나 장바구니 팝업/서랍 내에서 이것을 사용하는 경우 장바구니가 비었음을 사용자에게 표시하도록 UI를 처리하고 싶을 것입니다.
Reference
이 문제에 관하여(Alpine JS로 Shopify 카트를 지우는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/markmead/how-to-clear-the-shopify-cart-with-alpine-js-3gfa텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)