什么是时间戳

Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。

问题描述

在Vue项目中从后台请求过来的数据是一个对象数组,
对象中的create_time属性为时间戳表示的创建时间,
在前端的展示,需要用正常的 年-月-日 时-分-秒 这种格式,
例如 1512535620 转换为 1970-01-18 20:08:55。

在这里插入图片描述

解决代码

核心js代码

function add0(m){return m<10?'0'+m:m }
function format(shijianchuo)
{
//shijianchuo是整数,否则要parseInt转换
var time = new Date(shijianchuo);
var y = time.getFullYear();
var m = time.getMonth()+1;
var d = time.getDate();
var h = time.getHours();
var mm = time.getMinutes();
var s = time.getSeconds();
return y+'-'+add0(m)+'-'+add0(d)+' '+add0(h)+':'+add0(mm)+':'+add0(s);
}

在Vue项目中的使用

首先在methods中加入add和format这两个方法
注:其中format方法在方法内部调用了add方法

methods:{
 // 转换时间戳为日期格式方法
    add(m) {
      return m < 10 ? "0" + m : m;
    },
    format(shijianchuo) {
      //shijianchuo是整数,否则要parseInt转换
      var time = new Date(shijianchuo);
      var y = time.getFullYear();
      var m = time.getMonth() + 1;
      var d = time.getDate();
      var h = time.getHours();
      var mm = time.getMinutes();
      var s = time.getSeconds();
      return (
        y +
        "-" +
        this.add(m) +
        "-" +
        this.add(d) +
        " " +
        this.add(h) +
        ":" +
        this.add(mm) +
        ":" +
        this.add(s)
      );
    },
}

然后,在获取数据之后,用for循环遍历数组中的每一个对象,
调用format方法,将每一个对象的时间戳转换为日期格式。

methods:{
 getOrderList() {
      this.$http
        .get("orders", {
          params: this.queryInfo,
        })
        .then((res) => {
          console.log(res);
          var temp = res.data.data.goods;
          // 将时间戳转换为日期格式
          for (var i = 0; i < temp.length; i++) {
            temp[i].create_time = this.format(temp[i].create_time);
          }
          this.orderList = temp;
          this.total = res.data.data.total;
        });
    },
}

完活,成品展示

在这里插入图片描述

Logo

前往低代码交流专区

更多推荐