2

react-intl国際化のためにパッケージを使用しています。次に、パッケージは に依存していintl-messageformatます。私は両方のパッケージのドキュメントを検索してきましたが、分数である変数のメッセージを国際化できるかどうかについてまだ混乱しています。たとえば、ここで説明したように:

一部の言語では、「1. 小さじ2杯」でも「2 . 小さじ1杯」</p>

react-intl/を使用するときに分数を考慮する方法はありintl-messageformatますか? これまでのところ、ドキュメントで整数を使用した例しか見たことがありません。

4

1 に答える 1

2

FormattedNumber小数の処理に使用します。例えば:

    it('formats numbers with decimal separators', () => {
        const el = <FormattedNumber value={0.1} minimumFractionDigits={2} />;

        renderer.render(el, intlProvider.getChildContext());
        expect(renderer.getRenderOutput()).toEqualJSX(
            <span>0.10</span>
        );
    });

複数形には異なる値を使用します。

    it('pluralizes labels in strings', () => {
        const el = (
            <FormattedMessage
                id="num_emails"
                defaultMessage="You have 1.{teaspoons, plural, one {# teaspoons} other {# teaspoons}}."
                values={{
                    teaspoons: 2,
                }}
            />
      );

および単数形:

    it('pluralizes labels in strings', () => {
        const el = (
            <FormattedMessage
                id="num_emails"
                defaultMessage="You have 2.{teaspoons, plural, one {# teaspoons} other {# teaspoons}}."
                values={{
                    teaspoons: 1,
                }}
            />
      );

参考文献

于 2017-05-01T03:25:27.523 に答える