Angular 2 - how round calculated number?

后端 未结 3 1870
一个人的身影
一个人的身影 2021-01-12 05:37

I have a *ngFor loop and want to calculate a value - with 2 decimal places.

The calculation works:

相关标签:
3条回答
  • 2021-01-12 06:12

    You need another pipe to do this

    import {Pipe} from 'angular2/core';
    
    @Pipe({name: 'round'})
    export class RoundPipe {
      transform (input:number) {
        return Math.floor(input);
      }
    }
    

    template:

    {{ date | amDifference : item.startdate : 'minutes' : true | round }}
    
    0 讨论(0)
  • 2021-01-12 06:18

    IF its CURRENCY {{value | currency:'INR':true: '1.0-0'}}

    IF need NUMBER only {{value | number:'1.0-0'}}

    1.0-0 means: at least one digit before decimal point, 0 digits after decimal point.

    https://angular.io/api/common/DecimalPipe

    0 讨论(0)
  • 2021-01-12 06:20

    One can use angular built-in pipe such as number

    {{value | number:'1.0-0'}}

    If one wants to have an implementation of it:

    @Pipe({name: 'round'})
    export class RoundPipe {
      transform (input:number) {
        return Math.floor(input);
      }
    }
    

    Use in the template

    {{1,1 | round}} => 1
    {{2,1 | round}} => 2
    

    Another useful pipe is a round ten :

    @Pipe({name: 'roundTen'})
    export class RoundTenPipe implements PipeTransform {
      transform(value: number): number {
        return Math.round(value / 10) * 10;
      }
    }
    

    Use in the template

    {{11 | roundTen}} => 10
    {{21 | roundTen}} => 20
    
    0 讨论(0)
提交回复
热议问题