(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
2/17
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag
2/17

(๐ŸŽ๐ŸŽHOT SALE NOW 49% OFF) - 2-in-1 Shopping Bag Folding Green Bag

$29.90
$69.90
Save $40.00
2-in-1 Shopping Bag Folding Green Bag
Please select a 2-in-1 shopping bag folding green bag
Quantity
/** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); /** @private {Element} */ this.scrollableContainer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.viewport_ = this.getViewport(); this.initActions_(); } setTarget(containerId, targetId) { this.containerId = '#' + containerId; this.targetId = '#' + targetId; } scrollToTarget() { const container = document.querySelector(this.containerId); const target = container.querySelector(this.targetId); const {scrollTop} = container; const eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_ .interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); } initActions_() { this.registerAction( 'scrollToTarget', (invocation) => this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget', (invocation) => this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId) ); } /** * @param {Element} element * @param {Element} container * @return {number} * @private */ getOffsetTop_(element, container) { if (!element./*OK*/ getClientRects().length) { return 0; } const rect = element./*OK*/ getBoundingClientRect(); if (rect.width || rect.height) { return rect.top - container./*OK*/ getBoundingClientRect().top; } return rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll); const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings"; class SpzCustomStrengthenTrust extends SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); const renderId = this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body, () => !!document.getElementById(renderId), () => { this.renderElement_ = SPZCore.Dom.scopedQuerySelector( document.body, `#${renderId}` ); if (this.renderElement_) { this.render_(); } this.registerAction('track', (invocation) => { this.track_(invocation.args); }); } ); } render_() { this.fetchData_().then((data) => { if (!data) { return; } SPZ.whenApiDefined(this.renderElement_).then((apis) => { apis?.render(data); document.querySelector('#strengthen-trust-render-1539149753700').addEventListener('click',(event)=>{ if(event.target.nodeName == 'A'){ this.track_({type: 'trust_content_click'}); } }) }); }); } track_(data = {}) { const track = window.sa && window.sa.track; if (!track) { return; } track('trust_enhancement_event', data); } parseJSON_(string) { let result = {}; try { result = JSON.parse(string); } catch (e) {} return result; } fetchData_() { return this.xhr_ .fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) => { if (!responseData || !responseData.data) { return null; } const data = responseData.data; const moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) => { return result.concat(Object.assign(moduleSetting, { logos: (moduleSetting.logos || []).map((item) => { return moduleSetting.logos_type == 'custom' ? this.parseJSON_(item) : item; }) })); }, []); return Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !== window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);

Star Seller. This seller consistently earned 5-star reviews, shipped on time, and replied quickly to any messages they received.

Priority is given to delivery after payment.

In Stock, Ready To Ship.

Fast refund>>Money Back Guarantee.

Buy More Save More!

Buy 2 save 10%
Buy 3 save 20%

undefined

๐ŸŒฟ๐Ÿ‘œ Eco-Friendly Fashion, Embrace the Green Shopping Path! ๐ŸŒŽ๐Ÿ’š

A shopping bag that makes the bag bigger and smaller by zipper. It is used daily for grocery shopping, travel shopping, towing or shoulders are very practical, and with two wheels.

You can buy multiple reusable shopping bags and place them in your car trunk, entrance hall, kitchen, etc., to ensure you don't forget to bring them when going out. This also helps reduce the use of plastic bags, making it more environmentally friendly.

Features:

  • Can hide the wheel - When retracting small, you can also fold the wheels. It is convenient to carry. The wheels hide under the bag, and you can't see it without paying attention. The wheels are made of rubber and have a silent function.๐Ÿ‘

undefined

undefined

  • Easy to receive - The zipper at the top allows the bag to be of average size without taking up space. It is convenient to carry and receive, with a sealed zipper, which is simple and safe.

  • Multi-function - Once you open the zipper of the bag, it will turn it into a shopping bag. If you have many things, it becomes a practical shopping cart, which is easy to drag along.

undefined

  • Durable Material & Waterproof - The grocery cart with wheels is made of thick durable Oxford fabric waterproof inner, and caoutchouc wheels. The Oxford cloth is tear-resistant, wear-resistant, and waterproof, they are enough sturdy.
undefined
  • Large capacity, which is amazing, looks like an ordinary shopping bag, but is stylish and small.

  • Metal holder - The shopping bag is specially equipped with a metal holder to stabilize the body of the bag.

  • Multi-Purpose - Folding Shopping Trolley on Wheels for all your needs for shopping, travel, vacation, camping, hiking, beach games, picnics, luggage, school supplies, and many other uses. This folding shopping cart will be the most powerful helper especially when going back to school and out shopping! A stylish bag for shoppers, students, employees and more.

Specifications:

  • Product weight: 0.8lbs/0.365kg
  • Material: Oxford cloth + medium fiberboard

undefined

๐ŸŽPackage Include:

  • 1 x Shopping bag folding green bag

OUR GUARANTEE

๐Ÿ“ฆ Insured Worldwide Shipping: Each order includes real-time tracking details and insurance coverage in the unlikely event that a package gets lost or stolen in transit.

๐Ÿ’ฐ Money-Back Guarantee: If your items arrive damaged or become defective within 15 days of normal usage, we will gladly issue a replacement or refund.

โœ‰๏ธ 24/7 Customer Support: We have a team of live reps ready to help and answer any questions you have within a 24-hour time frame, 7 days a week. Email: support@accelerateh.com

๐Ÿ”’ Safe & Secure Checkouts: We use state-of-the-art SSL Secure encryption to keep your personal and financial information 100% protected.

class SpzSmartBlockComponent extends SPZ.BaseElement { constructor(element) { super(element); this.templates_ = null; this.container_ = null; this.i18n_ = {}; this.config_ = {}; this.show_type_ = 3; this.product_resource_id_ = ''; this.collection_resource_id_ = ''; this.cart_items_ = []; this.customer_id_ = ''; this.order_id_ = ''; } static deferredMount() { return false; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { const template_type = window.SHOPLAZZA.meta.page.template_type; if (template_type === 1) { this.show_type_ = 3; this.product_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 2) { this.show_type_ = 4; this.collection_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 15){ this.show_type_ = 5; } else if (template_type === 13){ this.show_type_ = 6; } else if (template_type === 20){ this.show_type_ = 7; this.customer_id_ = window.SHOPLAZZA.customer.customer_id; } else if (template_type === 35){ this.show_type_ = 8; this.order_id_ = window.location.pathname.split('/').pop(); } this.templates_ = SPZServices.templatesForDoc(this.element); this.setAction_(); } mountCallback() { console.log('smart mounted'); const that = this; const themeName = window.SHOPLAZZA.theme.merchant_theme_name; const isGeek = /Geek/.test(themeName); this.fetchRules().then((res) => { if (res && res.rules && res.rules.length) { const blockEl = document.getElementById('smart_recommend_block'); SPZ.whenApiDefined(blockEl).then((api) => { api.render({data: res}, true).then(() => { if (isGeek && that.show_type_ === 6) { blockEl.querySelector('.plugin_container_wrpper').style.padding = '30px 0'; } const recommendStyle = document.createElement('style'); recommendStyle.innerHTML = ` .plugin__recommend_container,.app-recommend-card { display: none !important; } `; document.head.appendChild(recommendStyle); const fetchList = []; res.rules.forEach((rule) => { fetchList.push(this.fetchRuleProductList(rule.id)); }); const fetchAll = Promise.all(fetchList); fetchAll.then((p_res) => { res.rules.forEach((rule, index) => { rule.products = p_res[index] && p_res[index].products; const ruleEl = document.getElementById('smart_recommend_rule_' + rule.id); SPZ.whenApiDefined(ruleEl).then((api) => { api.render({data: rule}, true).then(() => { that.impressListen(`#smart_recommend_rule_ul_${rule.id}`, function(){ that.trackRuleImpress(rule); }); const btnElList = document.querySelectorAll(`#smart_recommend_rule_ul_${rule.id} button`); btnElList.forEach((btnEl) => { if (btnEl && rule.config && rule.config.quick_shop_button_bg_color && rule.config.quick_shop_button_text_color) { btnEl.style.backgroundColor = rule.config.quick_shop_button_bg_color; btnEl.style.color = rule.config.quick_shop_button_text_color; } }) }); }); }); }); }) }) } else { if (window.top !== window.self) { const template_type = window.SHOPLAZZA.meta.page.template_type; const holderEl = document.getElementById('smart_recommend_preview_no_data_placeholder'); SPZ.whenApiDefined(holderEl).then((api) => { api.render({data: { isCart: template_type === 13, isCollection: template_type === 2, isProduct: template_type === 1, isIndex: template_type === 15 }}, true); }); } } }); } setAction_() { this.registerAction('quickShop', (data) => { const that = this; const product_id = data.args.product_id; const productIndex = data.args.productIndex; const rule_id = data.args.rule_id; const ssp = data.args.ssp; const scm = data.args.scm; const cfb = data.args.cfb; const ifb = data.args.ifb; const modalRender = document.getElementById('smart_recommend_product_modal_render'); if (product_id) { this.fetchProductData(product_id).then((res) => { const product = res.products && res.products.length && res.products[0] || {}; product.cfb = cfb; product.ifb = ifb; SPZ.whenApiDefined(modalRender).then((api) => { api.render({product: product, productIndex: productIndex, rule_id: rule_id, ssp: ssp, scm: scm, show_type: that.show_type_}, true).then(() => { const modalEl = document.getElementById('smart_recommend_product_modal'); SPZ.whenApiDefined(modalEl).then((modal) => { that.impressListen('#smart_recommend_product_modal', function(){ that.trackQuickShop({ rule_id: rule_id, product_id: product_id }); }); modal.open(); }); const formEl = document.getElementById('smart_recommend_product_form'); SPZ.whenApiDefined(formEl).then((form) => { form.setProduct(product); }); const variantEl = document.getElementById('smart_recommend_product_variants'); SPZ.whenApiDefined(variantEl).then((variant) => { variant.handleRender(product); }); }); }) }); } }); this.registerAction('handleScroll', (data) => { this.directTo(data.args.rule_id, data.args.direction); }); this.registerAction('handleProductChange', (data) => { const variant = data.args.data.variant; const product = data.args.data.product; const imageRenderEl = document.getElementById('smart_recommend_product_image'); SPZ.whenApiDefined(imageRenderEl).then((api) => { api.render({ variant: variant, product: product }, true); }); }); this.registerAction('handleAtcSuccess', (detail) => { const data = detail.args; data.data.product = data.data.product || {}; data.data.variant = data.data.variant || {}; const product_id = data.data.product.id; const product_title = data.data.product.title; const variant_id = data.data.variant.id; const price = data.data.variant.price; const rule_id = data.rule_id; const aid = `smart_recommend.${this.show_type_}.${rule_id}`; const ifb = data.data.product.ifb; const cfb = data.data.product.cfb; const ssp = data.ssp; const scm = data.scm; const spm = `smart_recommend_${this.show_type_}.${data.spmIndex}`; const params = { id: product_id, product_id: product_id, number: 1, name: product_title, variant_id: variant_id, childrenId: variant_id, item_price: price, source: 'add_to_cart', _extra: { aid: aid, ifb: ifb, cfb: cfb, scm: scm, spm: `..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, ssp: ssp, } }; this.tranckAddToCart(params); }); this.registerAction('addATCHook', (data) => { const params = data.args; const spm = `smart_recommend_${this.show_type_}.${params.spmIndex}`; this.myInterceptor_ = window.djInterceptors && window.djInterceptors.track.use({ event: 'dj.addToCart', params: { aid: `smart_recommend.${this.show_type_}.` + params.rule_id, ssp: params.ssp, scm: params.scm, cfb: params.cfb, spm: `..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, }, once: true }); }); } tranckAddToCart(detail) { if (window.$) { window.$(document.body).trigger('dj.addToCart', detail); } } fetchRules() { const payload = { show_type: this.show_type_, }; let that = this; if (this.show_type_ === 6) { let line_items = []; return this.fetchCart().then((res) => { if (res && res.cart && res.cart.line_items) { line_items = res.cart.line_items.map((item) => { return { product_id: item.product_id, variant_id: item.variant_id, quantity: item.quantity, price: item.price } }); } payload.line_items = line_items; that.cart_items_ = line_items; return that.fetchRulesRequest(payload); }); } else { if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return this.fetchRulesRequest(payload); } } fetchRulesRequest(payload) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_query", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }); } fetchCart() { return fetch(`/api/cart/cart-select?r=${Math.random().toString(36).slice(-4)}`) .then((res) => { if (res.ok) { return res.json(); } }); } fetchRuleProductList(rule_id) { const payload = { page: 1, limit: 100, fields: ["title", "url", "image", "min_price_variant.price", "min_price_variant.compare_at_price"], rule_id: rule_id, }; if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 6) { payload.line_items = this.cart_items_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); }); } fetchProductData(product_id) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ product_ids: [product_id], fields: [ "images", "options", "min_price_variant", "variants"] }) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); const loadingEl = document.getElementById('smart_recommend_loading'); if (loadingEl) { loadingEl.style.display = 'none'; } }); } getStyle(ele, style) { if (!ele) return; if (window.getComputedStyle) { return window.getComputedStyle(ele)[style]; } return ele.currentStyle[style]; } directTo(id, direction) { const scrollElement = document.getElementById(`smart_recommend_rule_ul_${id}`); const blockWidth = parseInt(this.getStyle(scrollElement, 'width')); const scrollLength = (blockWidth * 0.19 - 12) * 5; const scrollPoint = scrollElement.scrollWidth - scrollElement.clientWidth; if (!scrollElement) return; if (direction === 'left') { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft - scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: Math.max(scrollElement.scrollLeft - scrollLength, 0), behavior: 'smooth' }); } else { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint + 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: scrollElement.scrollLeft >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); } } trackRuleImpress(rule) { if (window.sa && window.sa.track) { window.sa.track("plugin_common", { plugin_name: "upsell", event_type: "impressions", rule_id: rule.id, ssp: rule.ssp, scm: rule.scm, show_type: this.show_type_, support_app_block: window.SHOPLAZZA.theme.support_app_block }); window.sa.track("module_impressions", { aid: `smart_recommend.${this.show_type_}.${rule.id}`, support_app_block: window.SHOPLAZZA.theme.support_app_block }); } } trackQuickShop(data) { window.sa && sa.track && sa.track("plugin_common", { plugin_name: "upsell", event_type: "quick_shop", rule_id: data.rule_id, product_id: data.product_id, show_type: this.show_type_, }); } impressListen(selector, cb) { const el = document.querySelector(selector); const onImpress = (e) => { if (e) { e.stopPropagation(); } cb(); }; if (el && !el.getAttribute('imprsd')) { el.addEventListener('impress', onImpress) } else if (el) { onImpress(); } } } SPZ.defineElement('spz-custom-smart-block', SpzSmartBlockComponent);