web-dev-qa-db-ja.com

Angular2の番号パイプが期待どおりに機能しない

platform-browser.umd.js:962 ORIGINAL EXCEPTION: 2 is not a valid digit info for number pipes

私のテンプレートにこれを書くことで得られるものです:

<li>Percentage satisfied: {{selectedCountry.averageSatisfaction | number:2}}</li>

私の意図は、小数点以下2桁の10進数を生成することです。誰かが私が間違っていることを指摘してもらえますか?ドキュメントは次のとおりです。 https://docs.angularjs.org/api/ng/filter/number

16
Piddien

おそらく DecimalPipe を探しているでしょう。

フォーマットは、次のようにパラメーターとしてパイプに渡されます。

number:'{minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}'

必要に応じてこれを使用します。

number:'1.2-2'

これにより、小数点の前に最小1桁、小数点の後にちょうど2桁の文字列が得られます。


ドキュメントの使用例:

@Component({
  selector: 'number-example',
  pipes: [DecimalPipe],
  template: `<div>
    <p>e (no formatting): {{e}}</p>
    <p>e (3.1-5): {{e | number:'3.1-5'}}</p>
    <p>pi (no formatting): {{pi}}</p>
    <p>pi (3.5-5): {{pi | number:'3.5-5'}}</p>
  </div>`
})
export class NumberPipeExample {
  pi: number = 3.141;
  e: number = 2.718281828459045;
}
45
rinukkusu