我对日期类有疑问。它应该带有一个参数(带时间戳),并输出正确的月份和月份。但它始终显示02.06之类的内容。过去一个月中的所有内容,而不是当前日期。
这是我将时间戳传递给getter的部分
<workCard v-if="services_getSort(sortServicesBy).length > 0" v-for="i in services_getSort(sortServicesBy).data" :key="i.source">
<div slot="content" class="d-flex justify-content-between ">
<router-link :to="'/services/' + i">
<div style="min-width:4.0rem" class="pr-1 align-items-center">
<span style="color:black;"><i class="fas fa-calendar-alt fa-md"></i> {{outputDateOnly(i.start)}}</span>
<br>
<span style="color:darkblue"><i class="fas fa-clock fa-md"></i> {{outputTimeOnly(i.start)}}</span>
</div>
</router-link>
<div class="p-1 d-flex mt-2">
<span style="color:black">></span>
</div>
<div style="min-width:4.0rem" class="align-items-center">
<span v-if="i.end != ''">
<span style="color:black;"><i class="fas fa-calendar-alt fa-md"></i> {{outputDateOnly(i.end)}}</span>
<br>
<span style="color:darkblue"><i class="fas fa-clock fa-md"></i> {{outputTimeOnly(i.end)}}</span>
</span>
<i v-if="i.end == ''" class="fas mt-3 fa-infinity fa-md"></i>
</div>
这是我的getter函数,应该处理原始时间戳
export const outputDateOnly = (state, getters) => {
return payload => {
let check = getters.zeroCheck;
let date = new Date(payload)
console.log(payload);
console.log(`${date.getDay()}.${date.getMonth()}`);
return `${date.getDay().toString()}.${date.getMonth().toString()}`
}
}
我的时间戳格式来自HTML输入type =“ date”,看起来像这样 2018-07-17T10:10
我希望有人知道解决方案
答案 0 :(得分:0)
我通过RobG的提示找到了解决方案 >
请注意,新的Date('2018-07-17T10:10')被Safari(错误地)视为UTC。 >不要使用内置的解析器。 – RobG 2小时前 我用moment.js替换了Date类,并更改了我传递给moment.js类的时间戳格式
谢谢@RobG