Simple vanilla JS library to handle shopping cart with common methods following E-Com Plus cart object model
The @ecomplus/shopping-cart
package can be used to persist and treat shopping cart data on E-Com Plus stores (and not only).
It's available for both Node.js and browser environments.
import ecomCart from '@ecomplus/shopping-cart'
ecomCart.on('change', ({ data }) => {
console.log('Cart was changed!')
console.log('Current cart data:', data)
})
ecomCart.addItem({
_id: '12300000000000000000000f',
product_id: '123a5432109876543210cdef',
sku: 's-MP_2B4',
name: 'Mens Pique Polo Shirt',
quantity: 4,
price: 42.9,
keep_item_price: false
})
ecomCart.increaseItemQnt('12300000000000000000000f', 3)
It may require and doesn't include core-js
(optional) and @ecomplus/utils
(peer dependency).
npm i --save core-js @ecomplus/utils @ecomplus/shopping-cart
npm i --save @ecomplus/utils @ecomplus/shopping-cart
<script src="https://cdn.jsdelivr.net/npm/@ecomplus/shopping-cart/dist/ecom-cart.var.min.js"></script>
When importing from CDN, EventEmitter3
and ecomUtils
libraries must be included separately and available on window scope.