2016-09-15 28 views
0

reactjsでは、ノードをレンダリングメソッドに変更することを委任しました。変更が完了したらselectedIndexのようなプロパティを呼び出すか取得するにはどうすればいいですか?私はselectedIndexを選択しているので、ユーザが実際に何かを選択していなくても0であるからです。render()で.selectedIndexを呼び出すにはどうすればよいですか?

例:このrenderメソッドをやっているものは何でもコンポーネント

render() { 
    <CategoryInput 
     categories={this.state.categories} 
     onValueChange={function(event) { 
     // not called when options themselves have changed 
     }} 
     ref={(input) => { 
     if (input) { 
      // the is a reference to the instance 
     } 
     }} 
    /> 

    // now that the categories have been added to the component 
    // I'd like to retrieve selectedIndex to use on a sibling's component 
} 

答えて

0

は、その状態の一部としてselectedIndexを持っている必要があります。だから、あなたはそれがレンダリング時の初期状態を設定し、選択したカテゴリ を表示し、onValueChange機能は、それが私の関心は、私はということです

+0

に変更されたものは何でもカテゴリにSETSTATEもなくてはいけない

getInitialState: function() { return this.setState({ selectedIndex: this.state.category[0] }) } 

を持つことができますノード自体からselectedIndexを取得するのではなく、むしろ私はそれが何であるかを仮定しています。これは仕様で保証されていますか? reactjsの外では、私はちょうどネイティブのDOM手順を使用したいと思います。 – chrisp

+0

https://facebook.github.io/react/docs/forms.html#why-select-valueこれは、選択を処理するリアクション方法になります。すべてを決定するために選択された値を使用します。 selectedIndexについて心配する必要はありません。値がドロップダウンリストに入力した値と一致していることを確認してください。 – finalfreq

+1

ありがとうございます。これで十分です。 (記事へのリンクのおかげで、他の理由で何百万回も読んでいるはずです - 選択したセクションを逃しました) – chrisp

関連する問題