Retro Fashion Contrast Floral Street Hoodie
Retro Fashion Contrast Floral Street Hoodie
Retro Fashion Contrast Floral Street Hoodie
Retro Fashion Contrast Floral Street Hoodie
Retro Fashion Contrast Floral Street Hoodie
Retro Fashion Contrast Floral Street Hoodie
1/2
Retro Fashion Contrast Floral Street Hoodie
Retro Fashion Contrast Floral Street Hoodie
1/2

Retro Fashion Contrast Floral Street Hoodie

$31.89
$38.00
ColorSame_As_Photo
Please select a color
Size
Please select a size
Quantity
Barcode:
  • Season : Winter , Autumn , Spring
  • Style : Glamorous , Basics , Preppy , Street , Casual , Vintage
  • Pattern Type : Print
  • Sleeve Length : Long Sleeve
  • Occasion : Home , Vacation , Street , Outdoors
  • Color : Multicolor
  • Material : Cotton

Size Chart

cm
SizeSMLXL2XL
Shoulder5152535455
Bust105110115120125
Length7172737475
Sleeve Length4647484950
inch
Size inchSMLXL2XL
Shoulder20.120.520.921.321.7
Bust41.343.345.347.249.2
Length28.028.328.729.129.5
Sleeve Length18.118.518.919.319.7
class SpzCustomDiscountFlashsale extends SPZ.BaseElement { constructor(element) { super(element); this.xhr_ = SPZServices.xhrFor(this.win); this.getFlashSaleApi = "\/api\/storefront\/promotion\/flashsale\/display_setting\/product_setting"; this.timer = null; this.variantId = "d7251733-e7bc-4572-aa89-d734fb6023a0"; // 促销活动数据 this.flashsaleData = {} } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.templates_ = SPZServices.templatesForDoc(); this.viewport_ = this.getViewport(); // 挂载bind函数 解决this指向问题 this.render = this.render.bind(this); this.resize = this.resize.bind(this); this.switchVariant = this.switchVariant.bind(this); } mountCallback() { // 获取数据 this.getData(); this.element.onclick = (e) => { const cur = this.win.document.querySelector(".app_discount_flashsale_desc"); if (this.flashsaleData.product_setting.is_redirection && appDiscountUtils.inProductBody(this.element) && e.target !== cur) { this.win.open(`/promotions/discount-default/${this.flashsaleData.discount_info.id}`); } } // 绑定 this.viewport_.onResize(this.resize); // 监听子款式切换,重新渲染 this.win.document.addEventListener('dj.variantChange', this.switchVariant); } unmountCallback() { // 解绑 this.viewport_.removeResize(this.resize); this.win.document.removeEventListener('dj.variantChange', this.switchVariant); // 清除定时器 if (this.timer) { clearTimeout(this.timer); this.timer = null; } } resize() { if (this.timer) { clearTimeout(this.timer) this.timer = null; } this.timer = setTimeout(() => { this.render(); }, 200) } switchVariant(event) { const variant = event.detail.selected; if (variant.product_id == 'ba6131fd-b1c6-480d-a764-c1633adad2d8' && variant.id != this.variantId) { this.variantId = variant.id; this.getData(); } } getData() { const reqBody = { product_id: "ba6131fd-b1c6-480d-a764-c1633adad2d8", product_type: "", variant_id: this.variantId } this.flashsaleData = {}; this.win.fetch(this.getFlashSaleApi, { method: "POST", body: JSON.stringify(reqBody), headers: { "Content-Type": "application/json" } }).then(async (response) => { if (response.ok) { this.flashsaleData = await response.json(); this.render(); } else { this.clearDom(); } }).catch(err => { this.clearDom(); }); } clearDom() { const children = this.element.querySelector('*:not(template)'); children && SPZCore.Dom.removeElement(children); } render() { this.templates_ .findAndRenderTemplate(this.element, { isMobile: appDiscountUtils.judgeMobile(), isRTL: appDiscountUtils.judgeRTL(), inProductDetail: appDiscountUtils.inProductBody(this.element), flashsaleData: this.flashsaleData, image_domain: this.win.SHOPLAZZA.image_domain, }) .then((el) => { this.clearDom(); this.element.appendChild(el); }) } } SPZ.defineElement('spz-custom-discount-flashsale', SpzCustomDiscountFlashsale);