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>