我正在使用onChangeText事件和状态获取TextInput的文本。
<View style={styles.inputContainerStyle}>
<TextInput
autoFoucs={true}
ref={inputRef}
style={styles.textInputStyle}
placeholder="type here ..."
placeholderTextColor='#838389'
multiline
underlineColorAndroid="transparent"
onChangeText={text => handleTextChange(text)}
value={selectedText}
/>
<TouchableOpacity style={styles.submitBtnWrapperStyle} onPress={() => handleMsgSend()}>
<Icon name={msgEditMode ? "check" : "paper-plane"} size={20} color="#ffffff" />
</TouchableOpacity>
</View>
。
// handle text change on textinput
const handleTextChange = text => {
channel && channel.typing();
setSelectedText(text);
}
但实际上,每当文本更改时,也会因为状态值的变化而调用渲染函数,并且会使整个屏幕变慢。
所以我正在寻找另一种方法来获取不使用onChangeText
事件的文本。
有没有使用 ref 获取文本的本机方法?
我希望得到善意的帮助。
谢谢。。。
是的,您可以使用这样的 ref 访问文本输入的值
this.inputRef._lastNativeText