1、日期选择器组件代码
<el-col :span="20">
<el-form-item label="活动起始日期值" prop="startTime">
<el-date-picker v-model="startTime" type="date" placeholder="请选择日期" value-format="timestamp" :picker-options="forbiddenStartTime"></el-date-picker>
</el-form-item>
</el-col>
2、具体实例
data () {
return {
ruleForm: {
startTime: '',
},
rules: {
startTime: [
{required: true, message: '请选择活动起始日期值', trigger: 'change'},
],
},
forbiddenStartTime:{ //禁用当前日期之前的日期
disabledDate: this.disabledDateMethod,
},
}
},
1)禁止选择当天之前的日期
methods: {
disabledDateMethod(time) {
// Date.now()是javascript中的内置函数,它返回自1970年1月1日00:00:00 UTC以来经过的毫秒数。
return time.getTime() < Date.now()
},
},
禁止选择包含当天及其之前的日期
methods: {
disabledDateMethod(time) {
// Date.now()是javascript中的内置函数,它返回自1970年1月1日00:00:00 UTC以来经过的毫秒数。
return time.getTime() < Date.now() - 8.64e7 // - 8.64e7 表示可选择当天时间
},
},
2)禁用选择当天之后的日期
methods: {
disabledDateMethod(time) {
// Date.now()是javascript中的内置函数,它返回自1970年1月1日00:00:00 UTC以来经过的毫秒数。
return time.getTime() > Date.now()
},
},
禁止选择包含当天及其之后的日期
methods: {
disabledDateMethod(time) {
// Date.now()是javascript中的内置函数,它返回自1970年1月1日00:00:00 UTC以来经过的毫秒数。
return time.getTime() > Date.now() - 8.64e7 // - 8.64e7 表示可选择当天时间
},
},
3)禁止选择自定义加载的日期,比如打开编辑框,禁止选择当前数据回显日期之前的日期
> 禁止选择之后 <禁止选择之前 - 8.64e7 表示可选择当天时间
methods: {
disabledDateMethod(time) {
// Date.now()是javascript中的内置函数,它返回自1970年1月1日00:00:00 UTC以来经过的毫秒数。
return time.getTime() > this.ruleForm.startTime - 8.64e7 // - 8.64e7 表示可选择当天时间
},
},
效果如下:
3、参考文档
官方地址:DatePicker 日期选择器