2016-09-11 16 views
2

私は第三者コンポーネントを使用しています。
私はParentChildの2つのクラスを持っています。 Parentコンポーネントでは、クラス名を小道具として受け入れ、それ自身でレンダリングするサードパーティのコンポーネントを使用します。
だから、親コンポーネントは次のようになります。反応クラスの小道具を設定する

render(){ 
    return (
    <div className="section"> 
     <Select 
     placeholder={placeholder} 
     valueComponent={Child} 
     /> 
    </div> 
); 

私が何をしたいのかは、子コンポーネントにいくつかの小道具を渡すことですが、私はいつも<Child someProp="prop"/>のようにこれをやりました。
このようにしてChildコンポーネントに小道具を渡す方法はありますか?

+0

「選択」は問題の第三者コンポーネントですとします。子コンポーネントは 'props.valueComponent'を介して渡されなければならないと指定していますか?通常、子コンポーネントは、 ' ' – Dan

+0

のように' this.props.children'で渡されます。@Dan yes '第三者libです。 '' valueComponent''の中にコンポーネント '' Child''を渡す必要はありません。 – Mehrdad

+0

um ...何?だから、 'Child'は' valueComponent'として渡されるべきではありませんか? – Dan

答えて

1

Selectライブラリがその方法を提供するかどうかはわかりません。場合によっては、常にラッパーコンポーネントを使用することができます。

// Create a child wrapper component and pass it to Select. 
function ChildWrapper(props) { 
    return <Child {...props} someProp="prop" />; 
} 

render(){ 
    return (
    <div className="section"> 
     <Select 
     placeholder={placeholder} 
     valueComponent={ChildWrapper} 
     /> 
    </div> 
); 
} 
+0

ありがとう、なぜこれのための臨時を考えなかったのか分からない。 – Mehrdad

関連する問題