Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
2/7
Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)
2/7

Nail Free Multifunction Film Storage Rack (🔥Special Offer - 40% Off)

$34.99
$57.99
Save $23.00
ColorBrown
Please select a color
Quantity
SKU: FilmStorage-001
Weight: 0kg
Barcode:

Wall-mounted kitchen roll holder with cling film, storage rack and foil cutter. Convenient and suitable for using to storage cling film in the kitchen

SAVE MORE SPACE IN SMALL KITCHEN: Our Multifunction paper holder is a smart choice to save more space in your small kitchen. You can hold paper towels easily while keeping your condiment bottles neatly. No more messy kitchen! Contemporary design is fashionable and matches a variety of kitchen decor styles.

With screws and viscose, you can choose to paste or punch

Main Features
● An elegant, safe and practical storage rack with cutters for the modern kitchen
● Everything is stored perfectly in one place, equipped with sharp blades on both rolls to cut the plastic wrap or others
● With the ergonomically designed structure, able to remove the cutters safely
● Convenient and suitable for storing plastic wrap in the kitchen
Specification
- Material: ABS
- Three colors to choose
-Product size (L x W x H):  15.35 x 3.94 x 9.45 inches

Material: ABS
Package Contents
1 x Storage Rack +4x screws +2x adhesive

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.