Vue vue-slider-component Range

by Ea Bangalore

HTML

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/vue-slider-component@latest/theme/default.css">
<script src="https://cdn.jsdelivr.net/npm/vue-slider-component@latest/dist/vue-slider-component.umd.min.js"></script>
<div id="app">
  <div>
    <vue-slider
      ref="slider"
      v-model="value" :enable-cross="false" 
    >
    
      <template v-slot="{ value: innerValue }" >
         <div style="display:flex;">
            <li><img src="http://placehold.it/60x60"/></li>
            <li><img src="http://placehold.it/60x60"/></li>
            <li><img src="http://placehold.it/60x60"/></li>
            <li><img src="http://placehold.it/60x60"/></li>
            <li><img src="http://placehold.it/60x60"/></li>
            <li><img src="http://placehold.it/60x60"/></li>
            <li><img src="http://placehold.it/60x60"/></li>
            <li><img src="http://placehold.it/60x60"/></li>
            <li><img src="http://placehold.it/60x60"/></li>
            <li><img src="http://placehold.it/60x60"/></li>
            <li><img src="http://placehold.it/60x60"/></li>
            <li><img src="http://placehold.it/60x60"/></li>
            <li><img src="http://placehold.it/60x60"/></li>
            <li><img src="http://placehold.it/60x60"/></li>
         </div>
  </template>
    
    
  <!--<template v-slot:process="{ start, end, style, index }">
    <div class="vue-slider-process custom-class" :style="[style, customStyle]">
      <div style="display:flex;">
              <li><img src="http://placehold.it/60x60"/></li>
        <li><img src="http://placehold.it/60x60"/></li>
        <li><img src="http://placehold.it/60x60"/></li>
        <li><img src="http://placehold.it/60x60"/></li>
        <li><img src="http://placehold.it/60x60"/></li>
        <li><img src="http://placehold.it/60x60"/></li>
        <li><img src="http://placehold.it/60x60"/></li>
      </div>
    </div>
  </template> -->
  
    </vue-slider>
  </div>
</div>

CSS

body {
  background: #20262E;
  padding: 20px;
  font-family: Helvetica;
}

#app {
  background: #fff;
  border-radius: 4px;
  padding: 50px;
  transition: all 0.2s;
}

 .custom-mark {
    position: absolute;
    top: 10px;
    transform: translateX(-50%);
    white-space: nowrap;
  }

.vue-slider{
     height: 137px !important;
}

.vue-slider-dot{
  height: 100% !important;
  width: 4px !important;
}

.vue-slider-dot-handle{
  border-radius:0 !important;
}

Vue

const vueSlider = window[ 'vue-slider-component' ];

let app = new Vue({
  el: '#app',
  components: {
    'vueSlider': vueSlider,
  },
  data: {
     value: [0, 30],
  }
});