Я пытаюсь обновить значение при перемещении ползунка.
[codepen] https://codepen.io/JakeHenshall/pen/WLezNg
<div id = "app">
<v-app id = "inspire">
<v-card flat color = "transparent">
<v-subheader>Tick labels</v-subheader>
<div v-if = "value == 0">
{{ ticksLabels[0] }}
</div>
<div v-else-if = "value === 1">
{{ ticksLabels[1] }}
</div>
<div v-else-if = "value === 2">
{{ ticksLabels[2] }}
</div>
<div v-else-if = "value === 3">
{{ ticksLabels[3] }}
</div>
<div v-else>
{{ ticksLabels[4] }}
</div>
<v-card-text>
<v-slider
v-model = "fruits"
:tick-labels = "ticksLabels"
:max = "4"
step = "1"
ticks = "always"
tick-size = "2"
></v-slider>
</v-card-text>
</v-card>
Javascript:
new Vue({
el: '#app',
data () {
return {
value: 0,
ticksLabels: [
'0 - £5k',
'£5k - £10k',
'£10k - £25k',
'£25k - £50k',
'£50k+'
]
}
}
})
Любая помощь с этим была бы замечательной, и некоторая информация о том, как привести в порядок оператор if, была бы замечательной.
Спасибо.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вам вообще не нужно ваше предложение if. Чтобы получить индекс выбранного вами элемента, используйте v-model = "value" (как вы уже делаете, просто слово «фрукты», вероятно, неверно) и замените предложение if этим крошечным фрагментом кода:
<div>
{{ticksLabels[value]}}
</div>
Я обновил вашу скрипку здесь
Вам нужно сделать пару вещей,
fruits, который вы используете как v-model на вашем v-slider, не имеет никакой ссылки, то есть нигде не объявлен. Поэтому убедитесь, что вы используете заявленную модель, value был объявлен, но никогда не использовался, поэтому вы можете использовать это в своей модели.ifs.Как это
<v-text-field v-model = "ticksLabels[value]"
class = "mt-0"
type = "text"></v-text-field>
<v-card-text>
<v-slider v-model = "value"
:tick-labels = "ticksLabels"
:max = "4"
step = "1"
ticks = "always"
tick-size = "2"></v-slider>
Вот ваш обновленный код https://codepen.io/jayas/pen/QzLrZd