我正在使用Angular版本1.6.1。 我有一个事件对象数组,使用ng-repeat加载到dom中。 事件具有以下属性:
{
city: ""
hash: ""
timestamp: 1234578910
noCount: 1
unknownCount: 2
yesCount: 2
}
如您所见,事件有时间戳。使用过滤器转换此时间戳:
app.filter('dateFilter', [function () {
return function (v) {
let operationDate = new Date(v);
let day = 'Yesterday: ';
if (new Date(v).setHours(0, 0, 0, 0) == new Date().setHours(0, 0, 0, 0)) {
day = 'Today: ';
}
let minutes = operationDate.getMinutes();
return day + operationDate.getHours() + ':' + (minutes < 10 ? "0" : "") + minutes;
};
}
]);
这里我的ng-repeat:
<div ng-class="getHighlight(operation.timestamp)" style="margin-top: 10px;">
<div class="row">
<h3 class="col-md-6 col-xs-6">
{{operation.city}}
</h3>
<div class="col-md-6 col-xs-6" style="text-align: right;">
<h3>
{{operation.timestamp | dateFilter}}
</h3>
</div>
</div>
.
.
.
.
</div>
我定期从API获取数据,并在事件参与者更改时更新(每5秒钟)。 我遇到的问题是,当新的一天开始时,过滤器不会将前缀更新为:&#34;昨天&#34;。
有没有办法重新应用过滤器或强制重新加载特定的DOM元素?
答案 0 :(得分:0)