Vintage Leather Bull Skull Necklace Accessory

1

$29.99
Colors:  gold
Quantity

Description

Product Description

  1. Unique Design
    This necklace is in the style of a Bolo Tie, highly personalized. The main body consists of hand - woven cowhide ropes. Both ends of the ropes are connected to exquisite alloy bull skull ornaments. The bull skulls have curved horns and are engraved with patterns, presenting a vintage and wild charm. Available in two colors, antique bronze and antique silver, it can meet different style - matching needs.
  2. Material and Craftsmanship
    The rope is made of hand - woven cowhide, which is soft and durable. The alloy bull skull ornaments are crafted through fine casting and carving processes, rich in details and with a unique luster.
  3. Specifications
    The size of the alloy bull skull is 4.8X4.5 cm, and the length of the cowhide rope is 95.5 cm.
  4. Applicable Scenarios
    Suitable for punk and cowboy - style outfits, it can be paired with T - shirts, denim jackets, shirts, etc. Whether at music festivals, themed parties, or in daily outings, it can showcase a unique fashion attitude. It can also be collected as a distinctive accessory.
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 = "5926e9e8-ff80-496b-89c2-8b6a91435ffd"; // 促销活动数据 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 == '644a938d-82f1-4298-82f2-5287024b39c8' && variant.id != this.variantId) { this.variantId = variant.id; this.getData(); } } getData() { const reqBody = { product_id: "644a938d-82f1-4298-82f2-5287024b39c8", product_type: "default", 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);