❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
1/13
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool
1/13

❄️Winter Discount Frenzy Promotion-49% OFF-🥩Stainless Steel Meat Tenderizer Needle 21 Pin Steak BBQ Kitchen Cooking Tool

$19.99
$33.31
Save 40%
COLOR
Please select a color
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);

🔥Hurry Up, Hot sales ultra low price deal will end soon.🔥

😊If youIf you are not satisfied with the goods received, please contact us within 15 days after receipt, we will give you the best help! Please don't worry!👇

💯Secure Payment Via PayPal® & Credit Card.

🚢Shipping>>Worldwide Express Shipping Available. 

🏆Returns>> Fast refund, Money-Back Guarantee.

🔥96.6% of customers are buying 2 or more!

5c844f9c9d8e4076a1b933f11a80e0cd.gif?width=1024

🥩 Tenderize Meat in Minutes with the Quick Pin Press Meat Tenderizer!  🥩

🍴 Say goodbye to tough, chewy meat and hello to tender, juicy cuts in just minutes! The Quick Pin Press Meat Tenderizer is the ultimate kitchen tool that makes tenderizing meat quick, easy, and effective. Whether you’re preparing steaks, chicken, or pork, this tool ensures your meats are perfectly tenderized for better flavor and even cooking — every time. 🍴


Tenderizing meats can be a laborious task if you’re using the wrong tools. That’s why this Quick Pin Press Meat Tenderizer is the perfect tool if you want to tenderize your meats quickly and easily. With its multiple knife blades that’s made of high-quality stainless steel and a handle with non-toxic plastic material, it achieves better cooking results with all kinds of meat!

This tenderizer is easy to use with its non-slip handle that’s also comfortable even for elderly people to hold, but with razor sharp pine needle-shaped knife blades that can cut through even in the toughest connective tissues of meats so you don’t have to wait long for the meat to marinade as the seasoning will be absorbed quickly. It’s also safe for handling since the materials are food-grade certified and relatively easy to hand wash by just soaking in warm and soapy water.

🤔 Why Choose the Quick Pin Press Meat Tenderizer?

🔪 21 Razor-Sharp Blades for Perfect Tenderizing

  • The 21 high-quality stainless steel blades are shaped like pine needles, designed to effortlessly cut through tough meat fibers, making your cooking easier and faster. By pressing the tenderizer onto the meat multiple times, you’ll break down even the toughest tissues, ensuring your meat cooks more evenly and with less shrinkage.

⏱️ Faster Marinating & Cooking Time

  • Tiny heat channels created by the sharp blades allow marinades to penetrate deeply and quickly, cutting down marinating time significantly. This means your meat will soak up those delicious flavors in no time and cook faster — perfect for busy weeknights or when you're entertaining guests!

🌟 Durable, Food-Safe Materials

  • Crafted from premium stainless steel and a food-grade ABS plastic handle, this tenderizer is built to last while ensuring safe handling. It’s corrosion-resistant and easy to clean, making it both a practical and hygienic addition to your kitchen.

🖐️ Easy to Use & Comfortable for Everyone

  • The ergonomic, non-slip handle provides a comfortable grip, making it easy to use even for elderly individuals or those with less hand strength. You won’t have to worry about slipping while tenderizing your meat — it’s designed for effortless use by anyone!

💧 Effortless Cleanup

  • No need to stress about cleaning up after use! Simply soak the tenderizer in warm, soapy water for a few minutes, then scrub it with a brush — easy peasy!

How to Use

  1. Press the Tenderizer onto the meat, applying gentle pressure.
  2. Repeat several times to ensure even tenderizing.
  3. Marinate and cook — your meat will absorb the flavors quickly and cook perfectly!

✨ Get Tender, Juicy Meat in Minutes! ✨

🍖 No more waiting hours for meat to marinate. With the Quick Pin Press Meat Tenderizer, you’ll spend less time prepping and more time enjoying your meals. Whether you’re cooking for family or grilling for friends, this tool is a must-have in your kitchen arsenal! 🍖

🛒 Order yours now and take your cooking to the next level! 🛒

📏 Specifications

  • Color: Black / White
  • Material: Stainless steel + PP
  • Size: 190 x 50mm
  • Weigth: 120g

📦 Products Included

  • 1 x Quick Pin Press Meat Tenderizer

📌 Notes

  • Due to manual measurements, please allow slight measurement deviations.
  • Due to the different display and lighting effects, the actual color of the item may be slightly different from the color displayed in the picture.

5c844f9c9d8e4076a1b933f11a80e0cd.gif?width=1024

🔥Act fast! This special offer won't last long. 🔥Once it's over, the price will revert to its original amount.

7d88ce5842aaf7936c6b3770afc1f91fa3c5b5bc.gif

💐WHY CHOOSE US❓

🌎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 you bought it and felt that it is not for you, don't worry. Just shoot us a message and we will make it right by offering you a replacement or refund. 100% Simple & Risk-Free process.

✉️ 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.

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

OUR GUARANTEE

🏺We take pride in our products as we believe they are amazing. However, we understand that buying things online can be daunting, especially for the first time, so we offer a 100% satisfaction guarantee.

💎If you don't have a positive experience for any reason, we will do whatever it takes to make sure you are 100% satisfied with your purchase.

9f121e87014a37b4db32ca8013c5e7406cb967b84d927ab5fb36ee6725381b64.jpeg

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('appzebu 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);