《Angular之日期显示错误》

前言:

   伴随着前端框架Angular在公司的深入实践,有很多问题也悄然浮出水面,让方法总比问题多,请随小编瞧瞧日期在前端这么着显示,前端应该作何处理?

正文:

        日期显示不正常呢?


怎么回事呢?

后端没有对日期做处理,返回前端的json数据直接是以毫秒的形式,继而前台接受显示如上图所示。

解决方案

在ts文件里编写日期转换方法:

translateDate(date) {
	  var y = date.getFullYear();
	  var m = date.getMonth() + 1;
	  m = m < 10 ? '0' + m : m;
	  var d = date.getDate();
	  d = d < 10 ? ('0' + d) : d;
	  var a = date.getM
	  return y + '-' + m + '-' + d;
	}

在表格加载时对接收的日期做相应处理:

getData() {
    this.http.get(this.url).subscribe(
      res => {
        this.result = res.json().data;
         
        if(res.json().code=="0000"){
          this.data = res.json().data.list;
          this.total = res.json().data.total;
          for(var i=0;i<res.json().data.list.length;i++)
          {  
            //对日期做处理
            let startDate=this.translateDate(new Date(res.json().data.list[i].startTime));
            let endTime=this.translateDate(new Date(res.json().data.list[i].endTime));
            this.data[i].startTime=startDate;
            this.data[i].endTime=endTime;
            console.info(startDate);
          }
        }else{
          this.message = "亲,不好意思,查询失败!";
          this.display = true;
        }
      }
    )
}

根据表格特性,具有分页功能,继而需要在分页时,也需要对日期做相应时间处理:

	/**
	 * 改变页码:真分页情况下,页号、每页大小改变就会查询后台数据
	 * @param data 
	 */
	changepage(data: any) {
	  let dataurl = "teachingManagement-web/schoolCalendar/selectByStrLike/" + this.searchContent +"/"+data.page+"/" + data.pageSize + this.authGuardService.getTicket();
	  this.http.get(dataurl).subscribe(
	    res => {
	      this.data = res.json().data.list;
	      this.total = res.json().data.total;
	    for(var i=0;i<res.json().data.list.length;i++)
	          {  
	            //日期处理
                    let startDate=this.translateDate(new Date(res.json().data.list[i].startTime));
	            let endTime=this.translateDate(new Date(res.json().data.list[i].endTime));
	            this.data[i].startTime=startDate;
	            this.data[i].endTime=endTime;

	          }
	    }
	  )
	  this.page = data.page;
	  this.pageSize = data.pageSize;
	}

结语:

   生活赋予我们一种巨大的和无限高贵的礼品,这就是青春:充满着力量,充满着期待志愿,充满着求知和斗争的志向,充满着希望信心和青春。
                                          —— 奥斯特洛夫斯基

评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值