2016-06-15 7 views
1

テキストの編集が完了したら、単にTextInputのテキストで関数を呼び出す必要があります。onSubmitEndingでのTextInputのテキストへのアクセス

<TextInput onSubmitEnding={(text) => submitText(text)}> 

以下のようなもの。しかし、明らかにテキストがonSubmitEndingに引数として渡されていません、。それはonChangeTextです。しかし、私は本当にユーザーが編集を完了した後にテキストが欲しいです。これを行う最も簡単な手段は何ですか?

答えて

2

onSubmitEndingは有効なイベントではありません。正しいものはonSubmitEditingです。

2ºあなたのコードは、この

<TextInput onSubmitEnding={(event) => this.submitText(event.nativeEvent.text)}> 
+0

ありがとう。これは私のニーズに合っています –

2

のようになりますevent.nativeEvent.text

を使用して、入力値を取得することができ、私は特定のパターンにあなたを強制的にではないんだけど、あなたはあなたのTextInputの値を持つ必要があります状態。次に:

... 
this.state = { 
    textInputValue: '' 
} 
... 
submitText() { 
    console.log(this.state.textInputValue) 
} 
... 
<TextInput 
    value={this.state.textInputValue} 
    onChangeText={(text) => this.setState({textInputValue: text})} 
    onSubmitEditing={() => this.submitText()} /> 

は完全に有効です。実際の例を次に示します。https://rnplay.org/apps/wirurQ

関連する問題