validate react pattern onchangetext handlechange change react-native

react native - react - Reaccionar nativo-Diferencia entre onChange vs onChangeText de TextInput



react native text input pattern (1)

onChangeText es básicamente una versión simplificada de onChange , por lo que puede usarlo fácilmente, sin la molestia de pasar por event.target.value para obtener un valor cambiado.

Entonces, ¿cuándo deberías usar onChange y cuándo onChangeText ?
Si tiene un formulario simple con pocas entradas de texto, o una lógica simple, puede ir directamente y utilizar onChangeText

<TextInput value={this.state.name} onChangeText={(text) => this.setState({name: text})}>

Si tiene formularios más complicados y / o tiene más lógica en el manejo de datos (como el manejo de texto de forma diferente al número) cuando el usuario cambia la entrada, entonces es mejor que con el onChange , porque le brinda más flexibilidad. Por ejemplo:

handleChange(event) { const {name, type, value} = event.nativeEvent; let processedData = value; if(type===''text'') { processedData = value.toUpperCase(); } else if (type===''number'') { processedData = value * 2; } this.setState({[name]: processedData}) } <TextInput name="username" type="text" value={this.state.username} onChange={this.handleChange}}> <TextInput name="password" type="number" value={this.state.password} onChange={this.handleChange}}>

No estoy seguro de cuándo usar onChange vs onChangeText en un componente TextInput . Sé que onChangeText acepta el texto modificado como un argumento en la devolución de llamada, pero ¿es por eso que usaría onChangeText , ya que puede actualizar el estado dentro de la devolución de llamada?