javascript - 更新 Vuetify slider 上的值

标签 javascript vue.js vuejs2

我想要做的是在 slider 位置移动时更新值。

[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 语句的一些信息也会很棒。

谢谢。

最佳答案

有几件事你必须做,

  1. 您在 v-slider 上用作 v-modelfruits 没有任何引用,这意味着它没有在任何地方声明。因此,请确保使用已声明的模型,value 已声明但从未使用过,因此您可以使用具有您的模型的模型。
  2. 在 slider 和代表的文本值上使用模型 slider 的位置,这样您就可以消除所有 if

比如这个

<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

关于javascript - 更新 Vuetify slider 上的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53678089/

相关文章:

javascript - 当数组只有 1 个元素时,从 JavaScript 数组中获取键

javascript - 如何证明高级 PDF(HTML) 中的阿拉伯文本?

javascript - 如何将对象正确传递给我的 vue 组件?

javascript - 如何使用vue js显示指定的行?

javascript - 有没有办法在 Vue.js 中动态插入点击事件?

c# - 通过套接字从浏览器发送数据到C#/Java

javascript - 一种监视元素焦点如何在 jquery 中发生的方法

javascript - 让 Monaco 与 Vuejs 和 Electron 一起工作

javascript - Vue,获取返回空数组

vue.js - 如何在加载后调用 vuejs 中的方法?