stock-quote时间显示逻辑

This commit is contained in:
Phoenix 2025-05-26 14:12:54 +08:00
parent af8348107b
commit 82711a9645

View File

@ -14,8 +14,31 @@ export const useStockQuote = createGlobalState(() => {
""
]
})
const date = new Date();
const options = {
// 计算美东时间的当前时间
function getTargetFridayTime() {
// 当前美东时间
const now = new Date(new Date().toLocaleString('en-US', { timeZone: 'America/New_York' }))
// 获取今天是周几0=周日, 1=周一, ..., 5=周五, 6=周六)
const day = now.getDay()
// 计算本周五的日期
const diffToFriday = 5 - day
const thisFriday = new Date(now)
thisFriday.setDate(now.getDate() + diffToFriday)
thisFriday.setHours(16, 0, 0, 0) // 设置为16:00:00
if (now >= thisFriday) {
// 当前时间在本周五16:00及以后显示本周五16:00
return thisFriday
} else {
// 当前时间早于本周五16:00显示上周五16:00
const lastFriday = new Date(thisFriday)
lastFriday.setDate(thisFriday.getDate() - 7)
return lastFriday
}
}
const options = {
year: 'numeric',
month: 'short',
day: 'numeric',
@ -24,13 +47,14 @@ const options = {
hour12: true,
timeZone: 'America/New_York',
timeZoneName: 'short'
};
};
const formatted = ref(date.toLocaleString('en-US', options))
const getStockQuate= async()=>{
const formatted = ref(getTargetFridayTime().toLocaleString('en-US', options))
const getStockQuate= async()=>{
const res = await axios.get('https://saas-test.szjixun.cn/api/chart/forward/test')
stockQuote.value=res.data
}
}
return {
formatted,
getStockQuate,