React v0.12/v0.13:<select>
サーバーとクライアント (同型) の両方でレンダリングしたい要素に問題があります。現在問題を再現している例を次に示します。
const React = require("react");
const SelectedDebug = React.createClass({
displayName: "SelectedDebug",
render() {
return (
<div>
<select value="C">
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
</select>
</div>
);
}
});
module.exports = SelectedDebug;
属性はselected
サーバーではレンダリングされませんが、ブラウザーでは正常に機能します。
defaultValue
また、要素にプロップを設定しようとしまし<select>
たが、違いはないようです。ただし、を使用すると機能<option value="C" selected>
しますが、コンソールに警告がスローされ、value
またはdefaultValue
プロップのいずれかを使用するように指示されます。
ドキュメントでは、望ましい動作についても説明しています: https://facebook.github.io/react/docs/forms.html#why-select-value
このコードは、トランスパイルにbabel-coreを使用してノード v0.12 で実行されています。
これはバグですか、それとも何か不足していますか?
更新:これは React のバグです。以下の私のコメント/リンクを参照してください。