从负数中删除破折号

时间:2021-07-06 18:16:21

标签: angular

当我显示负数时,例如 -0.24%...我想删除破折号。 不知道怎么改?

我不需要破折号,因为我有一个红色箭头。

enter image description here

不知道问题是不是要去掉破折号?

<div class="" style="width: 20% !important;">
    <h5 style="text-align: right;">
      {{ n.variation | number:'1.2-2' | projectformatnum }}&nbsp;%
      <span *ngIf="n.variation < 0"
      style="
         background: url(/assets/images/project-online-sprites.png) 1px -834px no-repeat; 
         position: relative; 
         top: 3px;
         margin-left: 10px;">
    </span>
    </h5>
</div>

3 个答案:

答案 0 :(得分:2)

您可以为此使用Math.abs 函数。

示例

n.variation // -0.24

Math.abs(n.variation) // 0.24

答案 1 :(得分:1)

您可以创建自定义管道:

通过 angular-cli:ng g pipe abs

@Pipe({name: 'abs'})

export class abs implements PipeTransform {
  transform(num: number, args?: any): any {
    return Math.abs(num);
  }
}

您可以将模板更改为:

{{ n.variation | number:'1.2-2' | projectformatnum | abs }}

答案 2 :(得分:1)

您也可以在管道数之前使用条件运算符

{{ (n.variation<0?-n.variation:n.variation) | number:'1.2-2' | projectformatnum }}

或者在你的管道 projectformatnum 中使用一些类似的返回总是一个正数格式化(我不知道你的管道)