使用饿了么el-date-picker里及如何将后台给的时间戳js转化为时间格式

首先代码是这个样子的,使用v-model

<el-date-picker v-model="formData.createTime"
            :disabled="true"
            type="datetime"
            value-format="yyyy-MM-dd HH:mm:ss"
            placeholder="选择日期">
</el-date-picker>

当formData.createTime接收后台的值是时间戳时,页面F12报:TypeError: dateStr.search is not a function

为什么呢,查看官网文档:使用format指定输入框的格式;使用value-format指定绑定值的格式。

这里绑定值并不是时间戳 :value-format="yyyy-MM-dd HH:mm:ss"
当我改为:value-format="timestamp"就可以了
当然如果你不想改,就用更麻烦的方法把绑定值时间戳转化为对应的时间格式
方法如下:
function myFormatDate(dd) {
  var now=new Date(dd);
  var year=now.getFullYear();
  var month=now.getMonth()+1;
  var date=now.getDate();
  var hour=now.getHours();
  var minute=now.getMinutes();
  var second=now.getSeconds();
  return year+"-"+month+"-"+date+" "+hour+":"+minute+":"+second;
}
处理一下this.formData.createTime = myFormatDate(this.formData.createTime)
当然这样很麻烦,而且代码也繁琐,这就是我开始没具体看文档写的方法,所以细心阅读文档还是很重要的
 
原文地址:https://www.cnblogs.com/bobo1/p/10916474.html