element-ui 日期选择器选择年份,拼接月日,并控制范围。
<el-date-picker clearable
v-model="form.date"
type="year"
:picker-options="pickerOptions"
format="yyyy-MM-dd"
value-format="yyyy-MM-dd"
placeholder="请选择日期"
@input="selectTime"
>
type="year",控制下拉选项为年份
format="yyyy-MM-dd"、value-format="yyyy-MM-dd",控制文字显示为年月日
此时选中年份会显示选中年的第一天【2023-01-01】,如果有规定月-日的需求,可以在选中事件里重新赋值。
:picker-options="pickerOptions",控制日期可选范围
this.pickerOptions = { disabledDate(time) { return time.getTime() < new Date().getTime(); }, }
例1:只能选择今天或者今天之后的时间
disabledDate(time) { // 如果没有后面的-8.64e7就是不可以选择今天的 return time.getTime() < Date.now() - 8.64e7; }
例2:只能选择今天或者今天之钱的时间
disabledDate(time) { // 如果没有后面的-8.64e6就是不可以选择今天的 return time.getTime() > Date.now() - 8.64e6; }
例3: 只能选取今天往后三天内
disabledDate(time) { const times = new Date(new Date().toLocaleDateString()).getTime() + 3 * 8.64e7 - 1 // 如果没有后面的-8.64e7就是不可以选择今天的 return time.getTime() < Date.now() - 8.64e7 || time.getTime() > times }