Akyra II

Der aktualisierte und einsatzbereite Akyra II GTX ist der perfekte Schuh für alle, die Schutz und Stabilität bei schnellen Bewegungen in wechselndem Gelände und bei jedem Wetter suchen. Das 3D-Grip-Obermaterial bietet bequemen Halt und Schutz, während die ePE Gore-Tex® Invisible Fit (PFC-frei) Membran vor den Elementen schützt. Die FriXion® Red Außensohle sorgt für hervorragende Traktion, und das Trail Rocker2 System ermöglicht ein natürliches Abrollverhalten – Kilometer für Kilometer.
€92.00
€180.00
-49%
/** * 优惠码组件模型类 * 处理优惠码的显示和交互逻辑 */ class SpzCustomDiscountCodeModel extends SPZ.BaseElement { constructor(element) { super(element); // 复制按钮和内容的类名 this.copyBtnClass = "discount_code_btn" this.copyClass = "discount_code_value" } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { // 初始化服务 this.action_ = SPZServices.actionServiceForDoc(this.element); this.templates_ = SPZServices.templatesForDoc(this.element); this.xhr_ = SPZServices.xhrFor(this.win); } /** * 渲染优惠码组件 * @param {Object} data - 渲染数据 */ doRender_(data) { return this.templates_ .findAndRenderTemplate(this.element, Object.assign(this.getDefaultData(), data) ) .then((el) => { this.clearDom(); this.element.appendChild(el); // 绑定复制代码功能 this.copyCode(el, data); }); } /** * 获取渲染模板 * @param {Object} data - 渲染数据 */ getRenderTemplate(data) { const renderData = Object.assign(this.getDefaultData(), data); return this.templates_ .findAndRenderTemplate(this.element, renderData) .then((el) => { this.clearDom(); return el; }); } /** * 清除DOM内容 */ clearDom() { const children = this.element.querySelector('*:not(template)'); children && SPZCore.Dom.removeElement(children); } /** * 获取默认数据 * @returns {Object} 默认数据对象 */ getDefaultData() { return { isMobile: appDiscountUtils.judgeMobile(), isRTL: appDiscountUtils.judgeRTL(), image_domain: this.win.SHOPLAZZA.image_domain, copyBtnClass: this.copyBtnClass, copyClass: this.copyClass } } /** * 复制优惠码功能 * @param {Element} el - 当前元素 */ copyCode(el) { const copyBtnList = el.querySelectorAll(`.${this.copyBtnClass}`); if (copyBtnList.length > 0) { copyBtnList.forEach(item => { item.onclick = async () => { // 确保获取正确的元素和内容 const codeElement = item.querySelector(`.${this.copyClass}`); if (!codeElement) return; // 获取纯文本内容 const textToCopy = codeElement.innerText.trim(); // 尝试使用现代API,如果失败则使用备用方案 try { if (navigator.clipboard && navigator.clipboard.writeText) { await navigator.clipboard.writeText(textToCopy); } else { throw new Error('Clipboard API not available'); } // 显示复制成功提示 this.showCopySuccessToast(textToCopy, el); } catch (err) { console.error('Modern clipboard API failed, trying fallback...', err); // 使用备用复制方案 this.fallbackCopy(textToCopy, el); } const discountId = item.dataset["discountId"]; // 跳转决策: is_redirection + link(可选覆盖) const setting = { is_redirection: item.dataset["redirection"] === "true", link: item.dataset["link"], }; const landingUrl = `/promotions/discount-default/${discountId}`; const finalUrl = appDiscountUtils.resolveDiscountHref(setting, landingUrl); if (finalUrl && appDiscountUtils.inProductBody(this.element)) { this.win.open(finalUrl, '_blank', 'noopener'); } } }) } } /** * 使用 execCommand 的复制方案 * @param {string} codeText - 要复制的文本 * @param {Element} el - 当前元素 */ fallbackCopy(codeText, el) { const textarea = this.win.document.createElement('textarea'); textarea.value = codeText; // 设置样式使文本框不可见 textarea.style.position = 'fixed'; textarea.style.left = '-9999px'; textarea.style.top = '0'; // 添加 readonly 属性防止移动端虚拟键盘弹出 textarea.setAttribute('readonly', 'readonly'); this.win.document.body.appendChild(textarea); textarea.focus(); textarea.select(); try { this.win.document.execCommand('copy'); // 显示复制成功提示 this.showCopySuccessToast(codeText, el); } catch (err) { console.error('Copy failed:', err); } this.win.document.body.removeChild(textarea); } /** * 创建 Toast 元素 * @returns {Element} 创建的 Toast 元素 */ createToastEl_() { const toast = document.createElement('ljs-toast'); toast.setAttribute('layout', 'nodisplay'); toast.setAttribute('hidden', ''); toast.setAttribute('id', 'discount-code-toast'); toast.style.zIndex = '1051'; return toast; } /** * 挂载 Toast 元素到 body * @returns {Element} 挂载的 Toast 元素 */ mountToastToBody_() { const existingToast = this.win.document.getElementById('discount-code-toast'); if (existingToast) { return existingToast; } const toast = this.createToastEl_(); this.win.document.body.appendChild(toast); return toast; } /** * 复制成功的提醒 * @param {string} codeText - 要复制的文本 * @param {Element} el - 当前元素 */ showCopySuccessToast(codeText, el) { const $toast = this.mountToastToBody_(); SPZ.whenApiDefined($toast).then(toast => { toast.showToast("Discount code copied !"); this.codeCopyInSessionStorage(codeText); }); } /** * 复制优惠码成功后要存一份到本地存储中,购物车使用 * @param {string} codeText - 要复制的文本 */ codeCopyInSessionStorage(codeText) { try { sessionStorage.setItem('other-copied-coupon', codeText); } catch (error) { console.error(error) } } } // 注册自定义元素 SPZ.defineElement('spz-custom-discount-code-model', SpzCustomDiscountCodeModel);
/** * Custom discount code component that handles displaying and managing discount codes * @extends {SPZ.BaseElement} */ class SpzCustomDiscountCode extends SPZ.BaseElement { constructor(element) { super(element); // API endpoint for fetching discount codes this.getDiscountCodeApi = "\/api\/storefront\/promotion\/code\/list"; // Debounce timer for resize events this.timer = null; // Current variant ID this.variantId = "388c1b10-4e80-4b12-ae61-85fa0bd2001f"; // Store discount code data this.discountCodeData = {} } /** * Check if layout is supported * @param {string} layout - Layout type * @return {boolean} */ isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } /** * Initialize component after build */ buildCallback() { this.templates_ = SPZServices.templatesForDoc(); this.viewport_ = this.getViewport(); // Bind methods to maintain context this.render = this.render.bind(this); this.resize = this.resize.bind(this); this.switchVariant = this.switchVariant.bind(this); } /** * Setup component when mounted */ mountCallback() { this.getData(); // Add event listeners this.viewport_.onResize(this.resize); this.win.document.addEventListener('dj.variantChange', this.switchVariant); } /** * Cleanup when component is unmounted */ unmountCallback() { this.viewport_.removeResize(this.resize); this.win.document.removeEventListener('dj.variantChange', this.switchVariant); // 清除定时器 if (this.timer) { clearTimeout(this.timer); this.timer = null; } } /** * Handle resize events with debouncing */ resize() { if (this.timer) { clearTimeout(this.timer) this.timer = null; } this.timer = setTimeout(() => { if (appDiscountUtils.inProductBody(this.element)) { this.render(); } else { this.renderSkeleton(); } }, 200); } /** * Handle variant changes * @param {Event} event - Variant change event */ switchVariant(event) { const variant = event.detail.selected; if (variant.product_id == '6e7c3dcf-a5c7-47a9-a24d-59b4e013b771' && variant.id != this.variantId) { this.variantId = variant.id; this.getData(); } } /** * Fetch discount code data from API */ getData() { if (appDiscountUtils.inProductBody(this.element)) { const reqBody = { product_id: "6e7c3dcf-a5c7-47a9-a24d-59b4e013b771", variant_id: this.variantId, product_type: "default", } if (!reqBody.product_id || !reqBody.variant_id) return; this.discountCodeData = {}; this.win.fetch(this.getDiscountCodeApi, { method: "POST", body: JSON.stringify(reqBody), headers: { "Content-Type": "application/json" } }).then(async (response) => { if (response.ok) { let data = await response.json(); if (data.list && data.list.length > 0) { data.list[0].product_setting.template_config = JSON.parse(data.list[0].product_setting.template_config); // Format timestamps to local timezone const zone = this.win.SHOPLAZZA.shop.time_zone; data.list = data.list.map(item => { if(+item.ends_at !== -1) { item.ends_at = appDiscountUtils.convertTimestampToFormat(+item.ends_at, zone); } item.starts_at = appDiscountUtils.convertTimestampToFormat(+item.starts_at, zone); return item; }); } this.discountCodeData = data; this.render(); } else { this.clearDom(); } }).catch(err => { console.error("discount_code", err) this.clearDom(); }); } else { this.renderSkeleton(); } } /** * Clear component DOM except template */ clearDom() { const children = this.element.querySelector('*:not(template)'); children && SPZCore.Dom.removeElement(children); } /** * Render discount codes with formatted dates */ render() { // Render using discount code model SPZ.whenApiDefined(document.querySelector('#spz_custom_discount_code_model')).then(renderApi => { renderApi.doRender_({ discountCodeData: this.discountCodeData }) }).catch(err => { this.clearDom(); }) } renderSkeleton() { // Render template for non-product pages this.templates_ .findAndRenderTemplate(this.element, { isMobile: appDiscountUtils.judgeMobile() }) .then((el) => { this.clearDom(); this.element.appendChild(el); }) .catch(err => { this.clearDom(); }); } } // Register custom element SPZ.defineElement('spz-custom-discount-code', SpzCustomDiscountCode);
Größe- 36
Menge
Kostenloser Versand
Rücksendungen innerhalb von 60 Tagen
Offizielle authentische Garantie
Unterstützung der Nachnahme
Personen sehen sich das gerade an
Beschreibung

  • Extrem robuster Wanderschuh mit hervorragender Langlebigkeit für Gratüberschreitungen, Geröll und lange Wanderungen.
  • Die ePE GORE-TEX® Invisible Fit Membrane schützt zuverlässig vor Regen, Schnee und Sand.
  • Das KPU 3D Grid-Exoskelett und das Mesh-Obermaterial sorgen für Struktur und optimale Atmungsaktivität.
  • Die Trail Rocker2 Außensohle unterstützt die natürliche Pronation (vom äußeren Fersenbereich bis zur Innenseite der Zehen) beim Wandern.
  • Die stoßdämpfende MEMlex EVA-Zwischensohle sorgt für eine hervorragende Dämpfung bei jedem Schritt.
  • Aggressive Stollen kombiniert mit FriXion®-Gummi und Trail Bite Heels bieten Traktion in jedem Gelände und maximalen Grip.
  • Die FriXion® Red Außensohle verfügt über unterschiedliche Kontaktflächen, die maximalen Grip und Haltbarkeit auf allen Untergründen garantieren.
  • Vollständig ohne gezielt zugesetzte PFAS hergestellt.

TECHNISCHE DATEN

ARTIKEL: 44H
GRÖSSEN: 36 - 47 (inkl. halbe Größen)
GEWICHT: 13,7 oz / 390 g
SCHNÖRSENKEL: 100 % recyceltes Polyester
OBERMATERIAL: Recyceltes 3-Lagen AirMesh / KPU 3D Grid™ / Flex-Guard™ Einsätze
FUTTER: Bluesign®-zertifizierte ePE GORE-TEX® Invisible Fit™ Membrane mit Gore-Flex® / Recycelter AirMesh-Kragen (Ferse)
EINLEGESOHLE: Ortholite® Hybrid™ mit 5 % recyceltem Gummi + 15 % Schaumstoff aus Produktionsabfällen
ZWISCHENSOHLE: 2,4 mm LaSpEVA / Spritzgegossenes MEMlex EVA mit biobasierten Komponenten
SOHLE: FriXion® XT 2.0 / Trail Rocker2 mit Impact Brake System™ / 5,5 mm Profilstollen
HÖREN: Tempo 2
PASSFORM: Mittel / Weit

TECHNOLOGIE

ÖKO-MATERIALIEN

Schuhwerk hergestellt aus recycelten oder umweltverantwortlichen Materialien.

FRIXION® RED (XT 2.0)

Zwei-Komponenten-Gummimischung mit besonders griffigem Gummi in der Mitte und langlebigem Gummi an den Seiten der Sohle.

IMPACT BRAKE SYSTEM™

Stollenprofil mit geneigten und entgegengesetzten Winkeln, um Aufprallkräfte zu reduzieren und die Traktion zu erhöhen.

ORTHOLITE® HYBRID™

Umweltfreundliche und waschbare Einlegesohle aus atmungsaktiven, langlebigen PU-Schaumzellen und recyceltem Gummi.

VEGAN

Die Produkte sind vollständig frei von Materialien tierischen Ursprungs.

GORE-TEX® INVISIBLE FIT

Wasserdichte Membran, die direkt mit dem Obermaterial verbunden ist, um Faltenbildung zu vermeiden und eine absolut größengetreue Passform zu garantieren.

BEWERTUNGEN

Bewertungsübersicht

Wählen Sie eine Zeile aus, um Bewertungen zu filtern.

5 Sterne
10
4 Sterne
1
3 Sterne
1
2 Sterne
0
1 Stern
0

Gesamtbewertung

4.8
★ ★ ★ ★ ★
12 Bewertungen

11 von 12 (91,7%) Rezensenten empfehlen dieses Produkt

Dieses Produkt bewerten

☆
☆
☆
☆
☆

Für die Abgabe einer Bewertung ist eine gültige E-Mail-Adresse zur Verifizierung erforderlich

Durchschnittliche Kundenbewertungen

Qualität
4.9
Wert
4.7
Passform
Fällt klein aus Fällt groß aus

Das könnte Ihnen auch gefallen