問題
value-format="yyyy-MM-dd",picker-options設置時間范圍失效: 在 Chrome 中正常,開始時間不能早於結束時間,結束時間不能晚於開始時間。但在 Safari 中不能限制
timeStartOptions: {
disabledDate: (time) => {
if (this.page.timeEnd) {
return time.getTime() >= Date.now() || time.getTime() >= new Date(this.timeEnd + ' 00:00:00').getTime()
}
return time.getTime() >= Date.now() //- 8.64e7
}
},
timeEndOptions: {
disabledDate: (time) => {
if (this.page.timeStart) {
return time.getTime() >= Date.now() || time.getTime() < new Date(this.timeStart + ' 00:00:00').getTime()
}
return time.getTime() >= Date.now()
}
},
解決方法
Safari中不支持 '-' 格式的日期字符串,將其替換成 '/'
timeStartOptions: {
disabledDate: (time) => {
if (this.page.timeEnd) {
return time.getTime() >= Date.now() || time.getTime() >= new Date(this.page.timeEnd.replace(/-/g, '/') + ' 00:00:00').getTime()
}
return time.getTime() >= Date.now()
}
},
timeEndOptions: {
disabledDate: (time) => {
if (this.page.timeStart) {
return time.getTime() >= Date.now() || time.getTime() < new Date(this.page.timeStart.replace(/-/g, '/') + ' 00:00:00').getTime()
}
return time.getTime() >= Date.now()
}
}