element中滑块组件Slider展示一天24小时的时间问题

效果如下element中滑块组件Slider展示一天24小时的时间问题_第1张图片

Slider滑块轴的默认绑定输出值是number 且取值范区间是【0-100】

element中滑块组件Slider展示一天24小时的时间问题_第2张图片

根据需求 比如我这里是需要展示一天24小时,且只能展示半点和整点。可以把时间轴等分成48份,这里max取值上限可以设为48,步长为1

element中滑块组件Slider展示一天24小时的时间问题_第3张图片

重点是自定义的格式化处理函数

formatTooltip (val) {
      let hour = 0
      let min = 0
      let ms = val * 1800
      hour = parseInt(ms / 3600)
      if (hour < 10) {
        hour = '0' + hour.toString()
      } else {
        hour = hour.toString()
      }
      min = ms % 3600
      if (min === 0) {
        min = '00'
      } else {
        min = '30'
      }
      let time = hour + ':' + min
      console.log(time)
      return time
    }

因为参数val是刻度上的一份,代表半小时时长,化成毫秒计算需乘1800。计算小时整除向下取整,计算分钟整除求余,除尽为整点,除不尽为半点。这里注意不满10小时要在前面补0。

你可能感兴趣的:(组件)