角度为2的十进制管 - 没有舍入的小数位

问题描述 投票:0回答:1

我目前使用这个管道{{ person.ageInDays/7 | number:'1.0-0' }}来显示一个人的周龄,这似乎不能正常工作!它有时会使数字上升。

例如,对于257天龄的婴儿,它应该是36周和5天,而结果是37周和5天!

angular angular-pipe
1个回答
0
投票

如果你看到angular doc,它清楚地提到数字管道的行为。

如果未指定参数,则使用此舍入方法将函数四舍五入到最接近的值。该行为与JavaScript Math.round()函数的行为不同。例如,在以下情况中,管道向下舍入Math.round()向上舍入的位置

您必须在您的案例中创建自定义管道

@Pipe({name: 'daystoweek'})
export class DaysToWeekPipe implements PipeTransform {
    transform(value: number): number {
        return Math.floor(value);
    }
}

在代码中使用该自定义管道

{{ numbervalue | daystoweek}}
© www.soinside.com 2019 - 2024. All rights reserved.