私はアプリケーションをReact 0.12からReact 0.14に移行しようとしており、react-intl FormattedMessageオブジェクトを選択タグ内に配置したオプション要素に問題があります。 0.12を反応させ、私は翻訳されたオプションの要素を参照してくださいにReact 0.14のオプションタグ内でFormattedMessageを使用するには?
<select>
<option value="value1"><FormattedMessage message={this.getIntlMessage('key1')}/></option>
<option value="value2"><FormattedMessage message={this.getIntlMessage('key2')}/></option>
</select>
このコードは正常に動作します:ここで
はサンプルJSXコードです。Only strings and numbers are supported as <option> children.
私は今年の初めに起こった反応という点で、このチェンジにメッセージをトレースさ:
https://github.com/facebook/react/pull/3847/files
私はこの問題をどのように修正することができます
では、私はこのエラーを得た、0.14の反応します?国際化されたオプション要素を使用しようとする唯一の人にはなりませんか?
OPがフォーマットを行う必要がない場合は、オプションの中で 'this.getIntlMessage( 'key1')'だけを実行できますか?完全な根本的な翻訳方法を公開しないような見落としがあります。 –
OPのケースでは、this.getIntlMessage( 'key1') 'は正しいメッセージを返します。 V2.0。0 APIは、コンテキスト上で翻訳メソッドを公開します。 –
プレースホルダを使用しない限り動作するようですが、これを行う安定した方法がないとは思いませんか? –