[email protected]
では、Input
属性defaultValue
を使用して、コンボボックスで選択された開始値を指定しました
<Input type='select'
ref='templateSelect'
defaultValue={this.state.templateId}
onChange={this.handleTemplateChange}>
{options}
</Input>
これを[email protected]
(最新のもの)でどのように処理する必要がありますか。ここでInput
は非推奨であり、ここで使用する必要がある新しいコンポーネントFormControl
はそのような属性を提供しませんか?
代わりにvalue
を使用する必要がありますか?
<FormControl type='select'
ref='templateSelect'
value={this.state.templateId}
onChange={this.handleTemplateChange}>
{options}
</FormControl>
または多分このようなもの:
value={this.state.templateId || 'default value'}
私はこれをテストしませんでしたが、React Bootstrap SourceControlのソースコード から、defaultValue
propを使用すると機能するはずです:
_<FormControl type="select"
ref="templateSelect"
defaultValue={this.state.templateId}
onChange={this.handleTemplateChange}>
{options}
</FormControl>
_
複数選択のdefaultValueが配列でなければならない場合:
_this.state = {
templateId:['some value']
}
<FormControl
multiple
type="select"
ref="templateSelect"
defaultValue={this.state.templateId}
onChange={this.handleTemplateChange}>
{options}
</FormControl>
_
"react-bootstrap": "1.0.0-beta.14"
、value
プロップが使用されます:
<Form.Control as="select" value={user}>
{ users.map(opt => (<option>{ opt }</option>)) }
</Form.Control>