2016-08-01 10 views
0

ステートレスコンポーネントonClickハンドラからrefにアクセスすることができるかどうかは知りませんか?例えばReactjs:ステートレスコンポーネントのイベントハンドラのrefにアクセスできますか?

function MyComponent ({myProp}) { 
    var userFeedbackNode 
    return <div> 
    <textarea ref={(c) => userFeedbackNode = c}/> 
    <button onClick={()=> { 
     //do something with the userFeedbackNode here. 
    }}>Send</button> 
    </div> 
} 

私はこの方法では、作業を行います信じてませんが、問題点は、この方法を割り当て、レフリーへのアクセスにありますか?

ありがとうございます!

答えて

0

はい。 functionnalコンポーネント自体にrefを付けることはできませんが、内部コンポーネントのrefを得ることができます(関数自体のコンポーネントでない場合)。 functionnalコンポーネントは、あなたが潜在的に持つことができるのライフサイクルメソッドを持っていないので、

let _inputRef 

const MyComponent = (props) => 
    <input type=text ref={ref => typeof _inputRef == 'undefined' ? ref : _inputRef} /> 

そうです、それは実現可能なものの、かなり役に立たないです:あなたはこのような何かが、functionnalコンポーネント自体のスコープ外の変数の参照を保持する必要がありますそのrefを使用する必要があります。

関連する問題