1/14
${data.index + 1}/${data.total}
Description
Keep your dish rags and sponges always dry and clean.
A damp cloth is a breeding ground for dirty that could endanger the well-being of your loved ones.
MAIN FEATURES
- VENTILATED DRAIN
Create a healthy environment by keeping your cleaning devices dry. The drain holes are evenly distributed, allowing the water to safely exit the bottom giving your sponges and rags time to properly dry.
- SCALABLE DESIGN
Can meet different needs, suitable for various sizes of sinks, freely adjust the length, can be large-capacity storage.
- TOWEL BAR
Doubles as a towel bar! The sleek design gives you a neat and tidy space to hang and dry towels, keeping your damp cloth dry, ventilated, clean, and hygienic.
- THICKENING DRAIN BOX
Easy to store scrubbing utensils, such as dishwashing liquid, hand sanitizer, brush bowl ball, etc.
- EASY INSTALLATION
Designed to be as simple as possible, easy to remove and wash. The buckle installation is more stable and will not shake.
SPECIFICATIONS:
- Material: Plastic
- Size: 39CM × 8.5CM × 27CM
- Weight: 260g
- Color: Blue, Gray, White, Pink
PACKAGE INCLUDES:
- 1 x Telescopic Storage Rack
${data.starNum}/${data.starTotal}
${data.starNum}/${data.starTotal}
${!isPercentage ? `${data.count}` : `${(data.count / data.total * 100).toFixed(1)}%`}
${data.count > 99 ? '99+' : data.count < 1 ? '' : data.count}
${function() {
if(data.imgCover) {
if(media.videosrc) {
let src = '';
if (media.videosrc) {
src = media.videosrc + '.' + media.ext;
}
const videoDom = `
`;
if(!isPC){
return `
`;
if(!isPC){
return `
`
}else{
return `
`
}
}
} else {
if (media.videosrc) {
let src = '';
if (media.videosrc) {
src = media.videosrc + '.' + media.ext;
}
return `
`
} else if(media.mp4 || media.hls) {
return `
`
} else {
return `
`
}
}
}()}
${videoDom}
`
}
return `
${videoDom}
`
} else if(media.mp4 || media.hls) {
const videoDom = `
${videoDom}
`
}
return `
${videoDom}
`
} else {
if(!isPC){
return `
Newest
Newest
Most liked
Highest ratings
Lowest ratings
Newest
Most liked
Highest ratings
Lowest ratings
All
All(${list.count})
With Photos(${list.image_count})
All(${list.count})
With Photos(${list.image_count})
${arrow}
`);
for (let i = startNumber; i <= endNumber; i++) {
if (i === pageNum) {
nums.push(
`${i}
`
);
} else {
// 第一段:不大于3
if (pageNum <= 3) {
if (i < pageNum + 2 || i > Math.max(endNumber - 4, 0)) {
nums.push(`${i}
`);
}
if (i === pageNum + 2 && i < endNumber - 3) {
nums.push(`...
`);
}
}
// 第二段:大于3 到 倒数第三个
if (pageNum > 3 && pageNum < endNumber - 3) {
if (i < 3 || i > endNumber - 3 || (pageNum - 2 < i && i < pageNum + 2)) {
nums.push(`${i}
`);
}
if (i === 3 && pageNum - 1 !== 3) {
nums.push(`...
`);
}
if (i === endNumber - 4) {
nums.push(`...
`);
}
}
// 第三段: 倒数4个
if (pageNum >= Math.max(endNumber - 3, 4)) {
if (i < 3 || i > endNumber - 3 || i == pageNum - 1) {
nums.push(`${i}
`);
}
if (i === 3 && pageNum > 4 && endNumber > 5) {
nums.push(`...
`);
}
}
}
}
nums.push(`
${arrow}
`);
return `${nums.join(' ')}
`;
}()}
${data.starNum}/${data.starTotal}
${data.starNum}/${data.starTotal}
Write a Review
${data.title}
Customer Reviews
(${data.comment_count > 500 ? '500+' : (data.comment_count || 0)})
Write a Review
View all
${item.username}
Verified
${item.content}
${data.shop_name} reply:
${item.reply && item.reply.length && item.reply[0].content}
${formatDate(item.created_at)}
View more
Wow you reached the bottom
View all
Write a Review
${data.comment_avg_star}
Total reviews: ${data.comment_count > 999 ? '999+' : data.comment_count}
${level}
Reviews
- All(${list.count})
- With Photos(${list.image_count})
Wow you reached the bottom
`;
} else {
return ``;
}
}()}
${function(){
return `
${function(){
if (media.videosrc) {
let src = '';
if (media.videosrc) {
src = media.videosrc + '.' + media.ext;
}
return `
`
} else if(media.mp4 || media.hls) {
return `
`
} else {
return `
`
}
}()}
No reviews available. The product reviews component has been hidden
Product Detail Reviews
Recently Viewed
The items in the shopping cart do not participate in any recommendation rule. Add the participating items to your shopping cart to check the design.
This product did not participated in any recommendation rule. Switch to another product to check the design.
The items in this collection do not participate in any recommendation rule. Switch the participating items to check the design.
The home page do not participate in any recommendation rule.
(This prompt would not display on client-side)
Recommended Products
${rule.config.title}
${(function(){
const product = data.product;
const avail_variants = product.variants.filter(function(variant){
return variant.available;
});
const selected_variant = product.min_price_variant.available ? product.min_price_variant : avail_variants.length && avail_variants[0];
return `
`
})()}
Cart
Your shopping bag is empty
-
${item.product_title}
- ${item.options.map(option => option.value).join('/')}
- ${propertie.name}/${propertie.isImage ? `View image` : propertie.value}
Free giftMixed Lot*${item.quantity}${item.item_text}(-${discount_item.title} )
Total:
${function() {
const textArray = ("Save {{save_amount}}").split(/\{\{\s*save_amount\}\}/);
if (textArray.length > 0 && textArray.length < 2) {
textArray.push('');
}
return textArray.map((text, index) => {
if (index == 0) {
return `${text}`;
}
return `
${text}
`;
}).join('');
}()}
${function() {
const textArray = ("Save {{save_amount}}").split(/\{\{\s*save_amount\}\}/);
if (textArray.length > 0 && textArray.length < 2) {
textArray.push('');
}
return textArray.map((text, index) => {
if (index == 0) {
return `${text}`;
}
return `
${text}
`;
}).join('');
}()}
-
${discount_application.title}:
-
${data.invalid_msg}
Taxes and shipping calculated at checkout
${data.invalid_msg}
Total:
${function() {
const textArray = ("Save {{save_amount}}").split(/\{\{\s*save_amount\}\}/);
if (textArray.length > 0 && textArray.length < 2) {
textArray.push('');
}
return textArray.map((text, index) => {
if (index == 0) {
return `${text}`;
}
return `
${text}
`;
}).join('');
}()}
${function() {
const textArray = ("Save {{save_amount}}").split(/\{\{\s*save_amount\}\}/);
if (textArray.length > 0 && textArray.length < 2) {
textArray.push('');
}
return textArray.map((text, index) => {
if (index == 0) {
return `${text}`;
}
return `
${text}
`;
}).join('');
}()}
${function() {
const textArray = ("Save {{save_amount}}").split(/\{\{\s*save_amount\}\}/);
if (textArray.length > 0 && textArray.length < 2) {
textArray.push('');
}
return textArray.map((text, index) => {
if (index == 0) {
return `${text}`;
}
return `
${text}
`;
}).join('');
}()}
-
${discount_application.title}:
-
${data.invalid_msg}
Taxes and shipping calculated at checkout
-
Subtotal:
-
${discount_application.title}:
-
Total:
Taxes and shipping calculated at checkout
