TextInputYalnızca sayısal karakterlerin (0 - 9) girilmesine izin verecek bir React Native bileşenine ihtiyacım var . Ben ayarlayabilirsiniz keyboardTypeiçin numericneredeyse orada dönemi hariç girişi için beni alır ki (.). Ancak bu, sayısal olmayan karakterleri alana yapıştırmayı durdurmaz.
Şimdiye kadar bulduğum şey OnChangeText, girilen metne bakmak için olayı kullanmak . Metinden sayısal olmayan tüm karakterleri kaldırıyorum. Ardından metni bir durum alanına koyun. Daha sonra özelliği TextInputaracılığıyla güncelleyin Value. Aşağıdaki kod parçacığı.
<TextInput
style={styles.textInput}
keyboardType = 'numeric'
onChangeText = {(text)=> this.onChanged(text)}
value = {this.state.myNumber}
/>
onTextChanged(text) {
// code to remove non-numeric characters from text
this.setState({myNumber: text})
}
Bu işe yarıyor gibi görünüyor ama bir hile gibi görünüyor. Bunu yapmanın başka bir yolu var mı?