我只是想在文本編輯完成後用TextInput的文本調用一個函數。類似下面訪問textInput on onSubmitEnding
<TextInput onSubmitEnding={(text) => submitText(text)}>
但很明顯的文本不作爲參數傳遞給onSubmitEnding
。 onChangeText
有它。但是我真的想在用戶完成編輯後顯示文字。那麼最簡單的方法是做什麼,
我只是想在文本編輯完成後用TextInput的文本調用一個函數。類似下面訪問textInput on onSubmitEnding
<TextInput onSubmitEnding={(text) => submitText(text)}>
但很明顯的文本不作爲參數傳遞給onSubmitEnding
。 onChangeText
有它。但是我真的想在用戶完成編輯後顯示文字。那麼最簡單的方法是做什麼,
1ºonSubmitEnding
是不是一個有效的事件,正確的是onSubmitEditing
。
2º你可以使用event.nativeEvent.text
你的代碼看起來應該是這樣
<TextInput onSubmitEnding={(event) => this.submitText(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
謝謝。這適合我的需求 –