【Vue】element-UI日期选择器value-format和范围选择冲突bug解决
本来想将时间选择器的时间format成8位字符串型,如20200307,但是format之后范围选择功能不能正常使用,最后使用moment插件读取八位字符串时间得以解决初始源代码参考至https://www.cnblogs.com/ceceliahappycoding/p/10862991.html初始源代码参考至本本链接过程中发现value-format="2020-03-07"则可以正常...
·
本来想将时间选择器的时间format成8位字符串型,如20200307,但是format之后范围选择功能不能正常使用,最后使用moment插件读取八位字符串时间得以解决
初始源代码参考至https://www.cnblogs.com/ceceliahappycoding/p/10862991.html
初始源代码参考至本本链接
过程中发现value-format="2020-03-07"则可以正常使用,探索许久发现是不能正常识别八位字符串时间
<el-form ref="form" :model="sizeForm" label-width="100px" size="mini">
<el-form-item label="开始时间">
<el-date-picker type="datetime" placeholder="开始日期" :picker-options="startTime" v-model="sizeForm.startTime" style="width: 90%;"></el-date-picker>
</el-form-item>
<el-form-item label="结束时间">
<el-date-picker type="datetime" placeholder="结束日期" :picker-options="endTime" v-model="sizeForm.endTime" style="width: 90%;"></el-date-picker>
</el-form-item>
<el-form>
export default{
data () {
return {
sizeForm: {
startTime: '',
endTime: ''
},
// 开始时间小于结束时间,且开始时间小于此刻
startTime: {
disabledDate: time => {
if (this.sizeForm.endTime) {
return time.getTime() > new Date(this.sizeForm.endTime).getTime()
} else {
return time.getTime() > Date.now()
}
}
},
// 结束时间大于开始时间,且小于此刻
endTime: {
disabledDate: time => {
if (this.sizeForm.startTime) {
return time.getTime() > Date.now() || time.getTime() < new Date(this.sizeForm.startTime).getTime()
} else {
return time.getTime() > Date.now()
}
}
}
}
}
}
解决方法:
import moment from 'moment’
将new Date().getTime()换成moment()
更多推荐
已为社区贡献1条内容
所有评论(0)