Waterproof Bicycle Front Handlebar Bike Bag

$45.00
$65.00
Save $20.00
Type : 6L Bag
Quantity
Description

  • Fully WATERPROOF: Innovative seamless workmanship 2 handlebar bags securely hold your items. Roll up closure provides dual protections for your clothes, shoes and tools. High strength 600D nylon + TPU bikepacking bag provide a more delicate using experience for you. Easy to clean with a wet terry.
  • QUICK RELEASE STRAPS & NIGHT VISIBILITY: Adjustable straps can easily fasten on the handlebar. Coupled with the extra straps can be used as waist bag. Convenient mounting Reflective logo increase your night visibility.
  • DETAIL DESIGNS: Three Reflective Logos to increase your riding safety at night; Strap storage loop is good to avoid straps being caught in bicycle tires.External Elastics cords for attaching some wet raincoats or coat, also fit photography tripod

  • 2 ASSEMBLY TUBE POUCHES: Detachable bikepacking bags can use together or alone on the handlebar. Freely matched, quick release & install on easily. (5 FIXED POINTS+Three point fix system)

  • LARGE CAPACITY: Total 19-21 L capacity top tube bags satisfy your long or short journey needs, classified storage your items such as clothes, keys, snacks, money, phones, wallets, cards, repair tools, small listening devices, and other more commonly used items (5-6 L + 14-15 L).

  • MULTI-purpose: Durable bike handlebar bags protect your device and accessories from harsh weather conditions or crashes.Suitable for variety Outdoors Activities

Product Features

1、Material: 600D Nylon + TPU waterproof coating

2、Roll Bag Weight: 538 grams ( 1.19 pounds)

3、Roll Bag Dimensions: 33.5 * 11.6 * 7.87 inches ( 85 * 29.5 * 20 cm )

4、Rectangle Bag Weight: 180 grams ( 0.22 pounds)

5、Rectangle Bag Dimensions: 11.8 * 2.55 * 1.18 inches ( 30 * 6.5 * 3 cm )

6、Roll maximum capacity: 14-15 L

7、Rectangle maximum capacity: 5-6 L

8、Total 19-21 L capacity satisfy your long or short journey needs

9、Washing Warnings: Wash with cool water: 30 degree. Do not brush, do not bleach, clean with wet cloth

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.