【问题标题】:How can I output my number with four decimals in percentage?如何以百分比形式输出带有四位小数的数字?
【发布时间】:2021-12-07 23:38:43
【问题描述】:

我有数字 10。我需要以百分比形式显示带有四位小数的数字。所以最后我应该有

10,0000 %

当我尝试时

{{ overallCostDeviation | percent:'4.1' }}

我得到 1,000.0%

我该如何解决这个问题?

【问题讨论】:

标签: angular angular-pipe


【解决方案1】:

要始终显示 4 位小数,您需要的是以下内容:

{{ overallCostDeviation | percent:'1.4-4' }}

根据documentationdigitsInfo 字符串的格式如下:

{minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}

要获得固定的小数位数,您需要将 minFractionDigitsmaxFractionDigits 设置为相同的数字(在您的情况下为 4)。

还要注意percent 管道要求输入值(即overallCostDeviation)为十进制形式:10% 应为0.1

最后,用于表示小数的符号与语言环境相关联。默认语言环境是en-US,它使用. 作为小数点。如果您想使用, 作为小数点,那么您需要设置一个使用, 作为小数点的语言环境。请参阅 this SO post 了解如何注册语言环境。

StackBlitz 示例:

【讨论】:

  • 感谢您的评论。但有了这个我得到 - 1,000.0000%。我需要得到 10,0000%
  • @sdsd,我已经编辑了我的答案,希望能解决您的问题。
【解决方案2】:

百分比管道的工作方式是采用十进制数(通常)。因此,如果您希望显示 10%,则您的值应为 0.10,以便百分比管道将其视为 10%。好吧,如果你想使用百分比管道,你需要将你的值除以 100。

可以这样做,使用 Sam 提供的实际管道参数:

{{ overallCostDeviation / 100 | percent:'1.4-4'}}

或者,如果您想使用数字管道(好吧,在这种情况下,, 将变为 .,除非使用语言环境...):

{{ overallCostDeviation | number:'1.4'  }}%

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-25
    • 2017-07-18
    • 2022-12-05
    • 1970-01-01
    • 2022-07-22
    • 2016-01-17
    • 1970-01-01
    • 2022-09-28
    相关资源
    最近更新 更多