Having trouble getting help?
Contact Support
Contact Support
Two-way binding in Vue Range Slider component
21 Feb 20252 minutes to read
It can be achieved by using the v-model
directive in vue. In the following sample, when you change a value in one Slider will automatically change the value in the other Slider. It updates the other Slider using the value
property.
<template>
<div id="app">
<div>Default Slider</div>
<ejs-slider id='default' v-model='value'></ejs-slider>
<div>Min Range Slider</div>
<ejs-slider id='minRange' type='MinRange' v-model='value'></ejs-slider>
</div>
</template>
<script setup>
import { SliderComponent as EjsSlider } from "@syncfusion/ej2-vue-inputs";
import { ref } from 'vue';
const value = ref(30);
</script>
<style>
@import "../node_modules/@syncfusion/ej2-base/styles/material.css";
@import "../node_modules/@syncfusion/ej2-vue-buttons/styles/material.css";
@import "../node_modules/@syncfusion/ej2-vue-popups/styles/material.css";
@import "../node_modules/@syncfusion/ej2-vue-inputs/styles/material.css";
#app {
height: 40px;
left: 30%;
position: absolute;
top: 40%;
width: 50%;
}
</style>
<template>
<div id="app">
<div>Default Slider</div>
<ejs-slider id='default' v-model='value'></ejs-slider>
<div>Min Range Slider</div>
<ejs-slider id='minRange' type='MinRange' v-model='value'></ejs-slider>
</div>
</template>
<script>
import { SliderComponent } from "@syncfusion/ej2-vue-inputs";
export default {
name: "App",
components: {
"ejs-slider": SliderComponent
},
data() {
return {
value: 30,
};
}
}
</script>
<style>
@import "../node_modules/@syncfusion/ej2-base/styles/material.css";
@import "../node_modules/@syncfusion/ej2-vue-buttons/styles/material.css";
@import "../node_modules/@syncfusion/ej2-vue-popups/styles/material.css";
@import "../node_modules/@syncfusion/ej2-vue-inputs/styles/material.css";
#app {
height: 40px;
left: 30%;
position: absolute;
top: 40%;
width: 50%;
}
</style>