【发布时间】:2021-04-16 16:24:02
【问题描述】:
我正在尝试删除从 Textinput 派生的字符串上的最后一个空格(如果有一个)
我必须在诸如“Maria de jesus”之类的字符之间留出空格。但如果字符串末尾有空格,则必须删除它,我也不能允许非数字字符。
这就是我所拥有的
<TextInput
style={styles.inputs}
placeholder="Nombre*"
placeholderTextColor={theme.SECONDARY_TEXT_COLOR}
underlineColorAndroid="transparent"
autoCorrect={false}
autoCompleteType="off"
autoCapitalize="characters"
onChangeText={
(() => setvName(values.fName), handleChange('fName'))
}
onFocus={() => setvTip(true)}
onBlur= {() => {setvName(values.fName.trimEnd()); handleBlur('fName'); setvTip(false)}}
textTransform= 'uppercase'
value={values.fName.replace(/[^A-Za-z\s+|\s+$ ]/ig, '')}
/>
我尝试过替换、修剪()和修剪结束() 那些尝试的结果,它不允许我放置空格并继续写,因为它会擦除我写的任何空间
有什么想法吗?
【问题讨论】:
-
应该只使用 onBlur ,不是吗?
-
应该,但由于某种原因它没有
-
创建一个演示问题的演示
-
您可能可以在最后清理字符串。不在
onChange中,而是在用户将输入数据发送到服务器时。在您的onSubmit函数中。如果那是您的用例。