在我的应用程序中,在后端存储持续时间值(以分钟为单位),如果持续时间值低于 1 小时(以分钟为单位)且相同值等于高于 1 小时(以小时为单位),则在前端显示数据。
<strong *ngIf="event.eventDuration > 0 && event.eventDuration/60 < 1">{{event.eventDuration}} Minutes<br/></strong>
<strong *ngIf="event.eventDuration > 0 && event.eventDuration/60 >= 1">{{event.eventDuration/60}} Hour(s)<br/></strong>
这是最好的方法还是编写组件函数并从函数返回值?如果我们从元素属性调用,组件函数也会调用太多次。
最佳答案
我会创建一个像这样的管道......
@Pipe({
name: 'myTime'
})
export class MyTimePipe implements PipeTransform {
transform(value: number): string {
if(value > 0 && value/60 < 1) {
return value + ' Minutes';
} else {
return value/60 + ' Hour(s)';
}
}
}
并在模板中使用它,如下所示:
{{event.eventDuration | myTime}}
关于angular - 将 angular2 组件或管道中的分钟转换为小时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45081593/