Javascript 反应本机:iOS听写无法清除文本输入
我在React原生应用程序中有一个非常基本的TextInput+按钮组合,用于编写和发送消息,如下所示:Javascript 反应本机:iOS听写无法清除文本输入,javascript,ios,react-native,Javascript,Ios,React Native,我在React原生应用程序中有一个非常基本的TextInput+按钮组合,用于编写和发送消息,如下所示: <TextInput type="text" ref={input => { this.inputRef = input; }} style={styles.userInput} name="userInput" autoCorrect={false} placeholder="Type something..
<TextInput
type="text"
ref={input => {
this.inputRef = input;
}}
style={styles.userInput}
name="userInput"
autoCorrect={false}
placeholder="Type something..."
autoFocus={false}
autoComplete="off"
onChangeText={this.watchInput}
returnKeyType="done"
/>
<Button
disabled={!this.state.isValidInput}
style={styles.sendButton}
title="Send"
textStyle={{fontSize: 12}}
onPress={this.handleSubmit}
accessibilityLabel="Press this button to send your message"
/>
当使用实际按钮进行发送时,这很好,但是如果我使用iOS键盘中的听写,它会在我结束讲话时发送消息,但输入字段没有清除,因此我在处理程序已发送的字段中保留相同的输入
你知道为什么听写会像这样工作,以及如何让听写在发送时清除输入字段吗
React原生版本0.57.8您是否在文本输入中绑定了值
尝试在文本输入中绑定输入,如value={this.state.input}是否在文本输入中绑定了值 尝试在文本输入中绑定输入,如value={this.state.input}
handleSubmit = async () => {
const message = this.state.input; // get input from state
Keyboard.dismiss() // hide keyboard
this.inputRef.clear(); // clear TextInput
this.setState({ input: '' }); // reset input state
this.setState({ isValidInput: false }); // reset input state
this.stretchInputField()
var r = await this.props.myAwesomeSendMessageFunction() // send message
}