Angular 离子3-角度5-时间格式更改

Angular 离子3-角度5-时间格式更改,angular,datetime,ionic3,angular5,Angular,Datetime,Ionic3,Angular5,我收到firebase关于开始时间的回复:16:40:12 我想将视图中的时间显示为04:40 PM,从下午开始在google中搜索解决方案,但无法正常工作 这是我的密码 <div class="time"> <div>{{ setDate(booking.start) | date:'hh:mm a' }}</div> <div>{{ setDate(booking.end) | date:'hh:mm a' }}</div&g

我收到firebase关于开始时间的回复:16:40:12

我想将视图中的时间显示为04:40 PM,从下午开始在google中搜索解决方案,但无法正常工作

这是我的密码

<div class="time">
   <div>{{ setDate(booking.start) | date:'hh:mm a' }}</div>
   <div>{{ setDate(booking.end) | date:'hh:mm a' }}</div>
 </div>

setDate(date){
  console.log(new Date(date));
  return new Date(date);
}

{{setDate(booking.start)}日期:'hh:mm a'}
{{setDate(booking.end)}日期:'hh:mm a'}
设置日期(日期){
控制台日志(新日期(日期));
返回新日期(日期);
}

只需将24小时格式转换为12小时格式,即可使用自定义方法

这里有一个例子

函数t转换(时间){
//检查正确的时间格式并将其拆分为组件
time=time.toString().match(/^([01]\d|2[0-3])(:)([0-5]\d)(:[0-5]\d)?$/)|[time];
如果(time.length>1){//如果时间格式正确
time=time.slice(1);//删除完整字符串匹配值
时间[5]=+时间[0]<12?'AM':'PM';//设置AM/PM
时间[0]=+时间[0]%12 | | 12;//调整小时数
时间[0]=时间[0]>10?时间[0]:“0”+时间[0];
}
console.log(time.join(“”));
return time.join(“”);//返回调整后的时间或原始字符串
}

t转换(“16:40:42”)工作,,但是,我需要04格式的小时数如果少于10,请根据您的要求立即检查。谢谢