Viking Style Celtic Embossed Belt Belt

$29.99
Color:  Dark brown
Quantity

Description

Item Details:
Material: PU leather + hardware fasteners
Size: 165cm*3.5cm
Color: dark brown, light brown, black
Weight: 120g


Design Inspiration: Mysterious Viking Imprints

The design inspiration for this series of belts comes from Viking culture. The interwoven Celtic - style patterns were often used to decorate weapons, shields, etc. in the Viking era, symbolizing power and protection. These intricate and exquisite patterns engraved on the belts make each one seem to carry the valor and mystery of the Vikings, adding a unique style to you.

Material and Craftsmanship: Durability and Texture Combined

The belts are made of high - quality leather, which is tough and durable, able to withstand daily wear - and - tear. After special treatment, the leather surface shows a natural texture and luster, full of a retro feel. The patterns are created with a fine embossing process, with clear lines that are not easy to wear out even with long - term use, perfectly integrating the roughness of Viking style and the refinement of craftsmanship.

Buckle Details: Simple yet Grand

The ring - shaped buckles come in two options: silver and gold. The simple design, paired with the Viking patterns on the belts, doesn't overpower but rather adds a touch of grandeur and fashion. The buckles are sturdy and easy to adjust, allowing you to modify the tightness of the belt according to your wearing needs. Whether paired with daily casual wear or Viking - style clothing, they can be easily managed.
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 = "4530eff9-59ae-487a-a0c4-2e27c3d145fe"; // 促销活动数据 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 == 'f413a778-fede-43d6-8a48-4d136fa8f338' && variant.id != this.variantId) { this.variantId = variant.id; this.getData(); } } getData() { const reqBody = { product_id: "f413a778-fede-43d6-8a48-4d136fa8f338", 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);