修复时差bug
This commit is contained in:
+11
-2
@@ -196,8 +196,17 @@ export function shouldRefresh(preTime: Date, now: Date, hour: number, deltaDay =
|
|||||||
*/
|
*/
|
||||||
export function getRefTime(now = new Date(), hour: number, day = 0) {
|
export function getRefTime(now = new Date(), hour: number, day = 0) {
|
||||||
let curTime = new Date(now.getTime());
|
let curTime = new Date(now.getTime());
|
||||||
if (curTime.getHours() < hour) {
|
let offset = curTime.getTimezoneOffset(); // 时差,单位分
|
||||||
curTime.setDate(curTime.getDate() - 1);
|
let checkHour = hour - 8 + offset/60;
|
||||||
|
if(checkHour < 0) {
|
||||||
|
checkHour = 24 + checkHour;
|
||||||
|
if (curTime.getHours() >= checkHour) {
|
||||||
|
curTime.setDate(curTime.getDate() + 1);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (curTime.getHours() < checkHour) {
|
||||||
|
curTime.setDate(curTime.getDate() - 1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
let today = setLocalHours(hour, curTime);
|
let today = setLocalHours(hour, curTime);
|
||||||
return new Date(today + day * 24 * 60 * 60 * 1000);
|
return new Date(today + day * 24 * 60 * 60 * 1000);
|
||||||
|
|||||||
Reference in New Issue
Block a user