Javascript

### element ui日期选择器提交的时间差8个小时,以及格式化Date():后台传回一串数字js中格式化(date.getFullYear is not a function)报错

本文主要是介绍### element ui日期选择器提交的时间差8个小时,以及格式化Date():后台传回一串数字js中格式化(date.getFullYear is not a function)报错,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

第一个解决时间差:

时间格式为:yyyy-MM-dd,数据时间上总是减掉了8个小时。原因是:

时间参数实际为零时区时间。中国国家标准时间是东经120°(东八区)的地方时间,同格林威治时间(世界时)整整相差8小时

设置value-format 属性, 精确到时间段value-format=“yyyy-MM-dd” 即可.

            <el-form-item label="企业成立时间" prop="TypeNumber">
              <el-date-picker
                v-model="editSupplierForm.EstablishedTime"
                type="datetime"
                value-format="yyyy-MM-dd hh:mm:ss"
                placeholder="选择日期时间">
              </el-date-picker>

第二个,TypeError: date.getFullYear is not a function

问题原因:选择空间数据默认类型是时间Date类型,然而,我们从数据库读出来的一般是字符串格式,然后报错了。

解决方案:

讲数据库中读出输入格式化成Date类型,使用new Date() 处理即可。

method函数

    //格式化日期:把字符串转化为data
   formateDate(date) {
    var date = new Date(date);
     return date
},

从API获取数据库,调用函数格式化日期:
      this.editSupplierForm = res.data.Supplier
      //收到时间之前把字符串转一下下
      this.editSupplierForm.EstablishedTime=this.formateDate(res.data.Supplier.EstablishedTime)
 

这篇关于### element ui日期选择器提交的时间差8个小时,以及格式化Date():后台传回一串数字js中格式化(date.getFullYear is not a function)报错的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!