DateTimePicker - element.eleme.io

DateTimePicker

Select date and time in one picker.
DateTimePicker is derived from DatePicker and TimePicker. For a more detailed explanation on pickerOptions and other attributes, you can refer to DatePicker and TimePicker.

Date and time

Default
With shortcuts
With default time
You can select date and time in one picker at the same time by setting type to datetime. The way to use shortcuts is the same as Date Picker.
<template>
  <div class="block">
    <span class="demonstration">Default</span>
    <el-date-picker
      v-model="value1"
      type="datetime"
      placeholder="Select date and time">
    </el-date-picker>
  </div>
  <div class="block">
    <span class="demonstration">With shortcuts</span>
    <el-date-picker
      v-model="value2"
      type="datetime"
      placeholder="Select date and time"
      :picker-options="pickerOptions">
    </el-date-picker>
  </div>
  <div class="block">
    <span class="demonstration">With default time</span>
    <el-date-picker
      v-model="value3"
      type="datetime"
      placeholder="Select date and time"
      default-time="12:00:00">
    </el-date-picker>
  </div>
</template>

<script>
  export default {
    data() {
      return {
        pickerOptions: {
          shortcuts: [{
            text: 'Today',
            onClick(picker) {
              picker.$emit('pick', new Date());
            }
          }, {
            text: 'Yesterday',
            onClick(picker) {
              const date = new Date();
              date.setTime(date.getTime() - 3600 * 1000 * 24);
              picker.$emit('pick', date);
            }
          }, {
            text: 'A week ago',
            onClick(picker) {
              const date = new Date();
              date.setTime(date.getTime() - 3600 * 1000 * 24 * 7);
              picker.$emit('pick', date);
            }
          }]
        },
        value1: '',
        value2: '',
        value3: ''
      };
    }
  };
</script>
try https://codepen.io/pen/?&editable=true
 Date and time range
Default
To
With shortcuts
To
You can select date and time range by setting type to datetimerange.
<template>
  <div class="block">
    <span class="demonstration">Default</span>
    <el-date-picker
      v-model="value1"
      type="datetimerange"
      range-separator="To"
      start-placeholder="Start date"
      end-placeholder="End date">
    </el-date-picker>
  </div>
  <div class="block">
    <span class="demonstration">With shortcuts</span>
    <el-date-picker
      v-model="value2"
      type="datetimerange"
      :picker-options="pickerOptions"
      range-separator="To"
      start-placeholder="Start date"
      end-placeholder="End date"
      align="right">
    </el-date-picker>
  </div>
</template>

<script>
  export default {
    data() {
      return {
        pickerOptions: {
          shortcuts: [{
            text: 'Last week',
            onClick(picker) {
              const end = new Date();
              const start = new Date();
              start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
              picker.$emit('pick', [start, end]);
            }
          }, {
            text: 'Last month',
            onClick(picker) {
              const end = new Date();
              const start = new Date();
              start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
              picker.$emit('pick', [start, end]);
            }
          }, {
            text: 'Last 3 months',
            onClick(picker) {
              const end = new Date();
              const start = new Date();
              start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
              picker.$emit('pick', [start, end]);
            }
          }]
        },
        value1: [new Date(2000, 10, 10, 10, 10), new Date(2000, 10, 11, 10, 10)],
        value2: ''
      };
    }
  };
</script>

Default time value for start date and end date

Start date time 12:00:00
-
Start date time 12:00:00, end date time 08:00:00
-
When picking date range on the date panel with type datetimerange, 00:00:00 will be used as the default time value for start and end date. We can control it with the default-time attribute. default-time accepts an array of up to two strings. The first item controls time value of the start date and the second item controls time value of the end date.
<template>
  <div class="block">
    <span class="demonstration">Start date time 12:00:00</span>
    <el-date-picker
      v-model="value1"
      type="datetimerange"
      start-placeholder="Start Date"
      end-placeholder="End Date"
      :default-time="['12:00:00']">
    </el-date-picker>
  </div>
  <div class="block">
    <span class="demonstration">Start date time 12:00:00, end date time 08:00:00</span>
    <el-date-picker
      v-model="value2"
      type="datetimerange"
      align="right"
      start-placeholder="Start Date"
      end-placeholder="End Date"
      :default-time="['12:00:00', '08:00:00']">
    </el-date-picker>
  </div>
</template>

<script>
  export default {
    data() {
      return {
        value1: '',
        value2: ''
      };
    }
  };
</script>

Attributes

AttributeDescriptionTypeAccepted ValuesDefault
value / v-modelbinding valuedate(DateTimePicker) / array(DateTimeRangePicker)——
readonlywhether DatePicker is read onlyboolean—false
disabledwhether DatePicker is disabledboolean—false
editablewhether the input is editableboolean—true
clearablewhether to show clear buttonboolean—true
sizesize of Inputstringlarge/small/mini—
placeholderplaceholder in non-range modestring——
start-placeholderplaceholder for the start date in range modestring——
end-placeholderplaceholder for the end date in range modestring——
time-arrow-controlwhether to pick time using arrow buttonsboolean—false
typetype of the pickerstringyear/month/date/datetime/ week/datetimerange/daterangedate
formatformat of the displayed value in the input boxstringsee date formatsyyyy-MM-dd HH:mm:ss
alignalignmentleft/center/rightleft
popper-classcustom class name for DateTimePicker's dropdownstring——
picker-optionsadditional options, check the table belowobject—{}
range-separatorrange separatorstring-'-'
default-valueoptional, default date of the calendarDateanything accepted by new Date()—
default-timethe default time value after picking a datenon-range: string / range: string[]non-range: a string like 12:00:00, range: array of two strings, and the first item is for the start date and second for the end date. 00:00:00 will be used if not specified—
value-formatoptional, format of binding value. If not specified, the binding value will be a Date objectstringsee date formats—
namesame as name in native inputstring——
unlink-panelsunllink two date-panels in range-pickerboolean—false
prefix-iconCustom prefix icon classstring—el-icon-date
clear-iconCustom clear icon classstring—el-icon-circle-close

Picker Options

AttributeDescriptionTypeAccepted ValuesDefault
shortcutsa { text, onClick } object array to set shortcut options, check the table belowobject[]——
disabledDatea function determining if a date is disabled with that date as its parameter. Should return a Booleanfunction——
cellClassNameset custom classNameFunction(Date)——
firstDayOfWeekfirst day of weekNumber1 to 77

shortcuts

AttributeDescriptionTypeAccepted ValuesDefault
texttitle of the shortcutstring——
onClickcallback function, triggers when the shortcut is clicked, with the vm as its parameter. You can change the picker value by emitting the pick event. Example: vm.$emit('pick', new Date())function——

Events

Event NameDescriptionParameters
changetriggers when user confirms the valuecomponent's binding value
blurtriggers when Input blurscomponent instance
focustriggers when Input focusescomponent instance

Methods

MethodDescriptionParameters
focusfocus the Input component—

评论

此博客中的热门博文

HTML Entity

copy text in vuejs and javascript

Inside Ethereum Transactions -