Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript Vuex或日期错误_Javascript_Date_Datepicker_Vuex - Fatal编程技术网

JavaScript Vuex或日期错误

JavaScript Vuex或日期错误,javascript,date,datepicker,vuex,Javascript,Date,Datepicker,Vuex,我对约会课有问题。它应该接受一个参数(其中有一个时间戳),并输出月份的正确日期和月份。但它总是显示02.06之类的内容。上个月的所有内容,而不是当前日期 这是我将时间戳传递给getter的部分 <workCard v-if="services_getSort(sortServicesBy).length > 0" v-for="i in services_getSort(sortServicesBy).data" :key="i.source"> <div slot=

我对约会课有问题。它应该接受一个参数(其中有一个时间戳),并输出月份的正确日期和月份。但它总是显示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>
我的时间戳格式来自HTML输入type=“date”,如下所示 2018-07-17T10:10


我希望有人知道解决方案

我通过罗布的提示找到了解决方案 >

请注意,Safari(错误地)将新日期(“2018-07-17T10:10”)视为UTC。>不要使用内置解析器罗布2小时前 我用moment.js替换了日期类,并更改了传递给moment.js类的时间戳格式


谢谢@RobG

Re
date.getMonth()
,月份是零索引的(6是7月)。这是一个副本,只需要找到一个。顺便问一下,有效载荷的价值是什么?参见值,例如2018-07-17T10:10,但无论是第17天还是第3天还是第6天,
新日期('2018-07-17T10:10')
被Safari(错误地)视为UTC并不重要。不要使用内置解析器。那么你有什么建议吗?你可以用两行代码编写你自己的解析器,或者使用像或这样的库。啊,只要使用
新日期(2018,6,17,10,10,0)
如果时间代表本地,就可以使用
新日期(Date.UTC(2018,6,17,10,10,0))
如果时间是UTC。使用String.substring可以轻松提取年、月等
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()}`
  }
}