ElementPlus TimePicker 時間選擇器

2021-09-08 09:47 更新

TimePicker 時間選擇器

用于選擇或輸入日期

任意時間點

可以選擇任意時間


使用 el-time-picker 標簽,通過 disabledHours disabledMinutes 和 disabledSeconds 限制可選時間范圍。提供了兩種交互方式:默認情況下通過鼠標滾輪進行選擇,打開arrow-control屬性則通過界面上的箭頭進行選擇。

<template>
  <el-time-picker
    v-model="value1"
    :disabled-hours="disabledHours"
    :disabled-minutes="disabledMinutes"
    :disabled-seconds="disabledSeconds"
    placeholder="任意時間點"
  >
  </el-time-picker>
  <el-time-picker
    arrow-control
    v-model="value2"
    :disabled-hours="disabledHours"
    :disabled-minutes="disabledMinutes"
    :disabled-seconds="disabledSeconds"
    placeholder="任意時間點"
  >
  </el-time-picker>
</template>

<script>
  const makeRange = (start, end) => {
    const result = []
    for (let i = start; i <= end; i++) {
      result.push(i)
    }
    return result
  }
  export default {
    data() {
      return {
        value1: new Date(2016, 9, 10, 18, 40),
        value2: new Date(2016, 9, 10, 18, 40),
      }
    },
    methods: {
      // 如允許 17:30:00 - 18:30:00
      disabledHours() {
        return makeRange(0, 16).concat(makeRange(19, 23))
      },
      disabledMinutes(hour) {
        if (hour === 17) {
          return makeRange(0, 29)
        }
        if (hour === 18) {
          return makeRange(31, 59)
        }
      },
      disabledSeconds(hour, minute) {
        if (hour === 18 && minute === 30) {
          return makeRange(1, 59)
        }
      },
    },
  }
</script>

任意時間范圍

可選擇任意的時間范圍

添加is-range屬性即可選擇時間范圍,同樣支持arrow-control屬性。

<template>
  <el-time-picker
    is-range
    v-model="value1"
    range-separator="至"
    start-placeholder="開始時間"
    end-placeholder="結(jié)束時間"
    placeholder="選擇時間范圍"
  >
  </el-time-picker>
  <el-time-picker
    is-range
    arrow-control
    v-model="value2"
    range-separator="至"
    start-placeholder="開始時間"
    end-placeholder="結(jié)束時間"
    placeholder="選擇時間范圍"
  >
  </el-time-picker>
</template>

<script>
  export default {
    data() {
      return {
        value1: [new Date(2016, 9, 10, 8, 40), new Date(2016, 9, 10, 9, 40)],
        value2: [new Date(2016, 9, 10, 8, 40), new Date(2016, 9, 10, 9, 40)],
      }
    },
  }
</script>

Attributes

參數(shù)說明類型可選值默認值
model-value / v-model綁定值date
readonly完全只讀booleanfalse
disabled禁用booleanfalse
editable文本框可輸入booleantrue
clearable是否顯示清除按鈕booleantrue
size輸入框尺寸stringmedium / small / mini
placeholder非范圍選擇時的占位內(nèi)容string
start-placeholder范圍選擇時開始日期的占位內(nèi)容string
end-placeholder范圍選擇時開始日期的占位內(nèi)容string
is-range是否為時間范圍選擇booleanfalse
arrow-control是否使用箭頭進行時間選擇booleanfalse
align對齊方式stringleft / center / rightleft
popper-classTimePicker 下拉框的類名string
range-separator選擇范圍時的分隔符string'-'
format顯示在輸入框中的格式string日期格式HH:mm:ss
default-value可選,選擇器打開時默認顯示的時間Date(TimePicker) / string(TimeSelect)可被new Date()解析(TimePicker) / 可選值(TimeSelect)
name原生屬性string
prefix-icon自定義頭部圖標的類名stringel-icon-time
clear-icon自定義清空圖標的類名stringel-icon-circle-close
disabled-hours禁止選擇部分小時選項function
disabled-minutes禁止選擇部分分鐘選項function(selectedHour)
disabled-seconds禁止選擇部分秒選項function(selectedHour, selectedMinute)

Events

事件名說明參數(shù)
change用戶確認選定的值時觸發(fā)組件綁定值
blur當 input 失去焦點時觸發(fā)組件實例
focus當 input 獲得焦點時觸發(fā)組件實例

Methods

方法名說明參數(shù)
focus使 input 獲取焦點
blur使 input 失去焦點


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號