HOYUFEI 30 PCS Cute Enamel Pins Bulk Kawaii Brooches Button Steel Pin - Cartoon Plant Enamel for Backpacks Bag Hat

$18.99
Quantity
Description
Rich in Styles: you will receive 30 pieces of pins for backpacks in 30 different styles, the color is fresh and elegant, enough quantity and rich styles can satisfy your collocation and adornment needs, you can match this pin with your clothes, backpacks and so on, which can make you look more cute
Fine Workmanship: these lovely funny brooch pins are mainly made of alloy and enamel material, handmade and hard enamel coloring, fine workmanship, delicate appearance, the surface is bright and smooth, easy to fade or break, easy to pin up and take off, giving a good decorative effect
Cute Shape: the style of cartoon enamel pin is cute and vivid, such as a mushroom cat playing a musical instrument, a dancing mushroom, a frog playing guitar, a hedgehog hiding under a mushroom and so on; The styles are exquisite and diverse, at the same time, there is a butterfly clasp on the back of each pin, so you can easily take it off or put it on
Easy to Match: whether it's business wear or casual wear, these cute enamel pins will match your outfit, it works well with jackets, sweaters, backpacks, jeans and more; Each one has a different style, very creative and stylish, wearing it can make you the center of attention for any occasion such as party, date, holiday celebration or banquet
Exquisite Additions: our kawaii mushroom pins are versatile decorative accessories, suitable for decorating your clothes, hats, bags, backpacks, scarves, DIY ornaments, etc., adding temperament and charm, adorn your whole wear and manifest your beauty and taste
  • Enamel pins bulk: You will get 30pcs different styles of enamel pins set, lovely animals and plants, cartoon food and more. Fashion Look - A variety of different brooches for women combinations will meet your different needs.
  • Durable material:These cute pins are made of durable alloy and vivid enamel.Delicate enamel pins, lightweight, comfortable. Button pins wear-resistant and easy to carry.
  • The enamel pins is novel, unique and cute. It makes your dress, bag or jacket more shiny and attractive. Come and have a pin show that belongs to you.
  • Nice gifts for girls, friends, daughter, classmate or family on birthday, party, special day.
  • Also great additions to your jacket collar or a backpack,handbag,wallet,hats also good for DIY works.
Customer Reviews

Here are what our customers say.

Write a Review
Customer Reviews
Wow you reached the bottom
Newest
Most liked
Highest ratings
Lowest ratings
×
class SpzCustomFileUpload extends SPZ.BaseElement { constructor(element) { super(element); this.uploadCount_ = 0; this.fileList_ = []; } buildCallback() { this.action = SPZServices.actionServiceForDoc(this.element); this.registerAction('upload', (data) => { this.handleFileUpload_(data.event?.detail?.data || []); }); this.registerAction('delete', (data) => { this.handleFileDelete_(data?.args?.data); }); this.registerAction('preview', (data) => { this.handleFilePreview_(data?.args?.data); }); this.registerAction('limit', (data) => { this.handleFileLimit_(); }); this.registerAction('sizeLimit', (data) => { this.handleFileSizeLimit_(); }); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } setData_(count, file) { this.uploadCount_ = count; this.fileList_ = file; } handleFileUpload_(data) { data.forEach(i => { if(this.fileList_.some(j => j.url === i.url)) return; this.fileList_.push(i); }) this.uploadCount_++; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileUpload", { count: this.uploadCount_, files: this.fileList_}); if(this.fileList_.length >= 5){ document.querySelector('#review_upload').style.display = 'none'; } if(this.fileList_.length > 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '8px'; } } handleFileDelete_(index) { this.fileList_.splice(index, 1); this.uploadCount_--; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileDelete", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; if(this.fileList_?.length === 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '132px'; } } handleFilePreview_(index) { const finalPreviewData = this.fileList_[index]; const filePreviewModal = document.getElementById('filePreviewModal'); const fullScreenVideo = document.getElementById('fullScreenVideo'); const fullScreenImage = document.getElementById('fullScreenImage'); const previewModalClose = document.getElementById('previewModalClose'); const previewLoading = document.getElementById('previewLoading'); filePreviewModal.style.display = 'block'; previewLoading.style.display = 'flex'; if(finalPreviewData?.type === 'video'){ const media = this.mediaParse_(this.fileList_[index]?.url); fullScreenVideo.addEventListener('canplaythrough', function() { previewLoading.style.display = 'none'; }); fullScreenImage.src = ''; fullScreenImage.style.display = 'none'; fullScreenVideo.style.display = 'block'; fullScreenVideo.src = media.mp4 || ''; } else { fullScreenImage.onload = function() { previewLoading.style.display = 'none'; }; fullScreenVideo.src = ''; fullScreenVideo.style.display = 'none'; fullScreenImage.style.display = 'block'; fullScreenImage.src = finalPreviewData.url; } previewModalClose.addEventListener('click', function() { filePreviewModal.style.display = 'none'; }); } handleFileLimit_() { alert(window.AppReviewsLocale.comment_file_limit || 'please do not upload files more than 5'); this.triggerEvent_("handleFileLimit"); } handleFileSizeLimit_() { alert(window.AppReviewsLocale.comment_file_size_limit || 'File size does not exceed 10M'); } clear(){ this.fileList_ = []; this.uploadCount_ = 0; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleClear", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; } mediaParse_(url) { var result = {}; try { url.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) { try { result[key] = decodeURIComponent(value); } catch (e) { result[key] = value; } }); result.preview_image = url.split('?')[0]; } catch (e) {}; return result; } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, name, data); this.action.trigger(this.element, name, event); } } SPZ.defineElement('spz-custom-file-upload', SpzCustomFileUpload);
The review would not show in product details on storefront since it does not support to.