angular date 过滤器不兼容 ios 造成 列表循环渲染错误的问题

设备型号: iphone6/7 ios

描述: 当列表循环渲染中使用了angular自带的date过滤器时,造成了列表渲染条数错误的问题。

正确情况应该是渲染出4条数据,实际上只渲染了2条。

渲染条数不稳定,当页面刷新后,有时会是4条,有时2条。

<div *ngFor="let item of list">
{{ item.CreateTime | date:'MM-dd HH:mm' }}
</div>

解决方法:

先把 list 的数据处理好需要的格式再渲染。

// javascript
list.forEach((item, index) => {
   if (list[index].CreateTime) {
        list[index].date = formateDate(item.CreateTime, 'MM-dd HH:mm');
   } else {
        list[index].date = '';
   }
});
// html
<div *ngFor="let item of list">
{{ item.date }}
</div>
原文地址:https://www.cnblogs.com/unclefang/p/12378087.html