如何在textinput的本地本机中使用两个onChangeText

时间:2018-09-19 11:12:31

标签: react-native textinput

<TextInput          
 placeholder="Full Name"
 onChangeText={userName => this.setState({ userName })} 
 onChangeText={text => this.validate(text, "username")}  
 underlineColorAndroid="transparent"
 style={[
         styles.TextInputStyleClass,
         !this.state.nameValidate ? styles.error : null
       ]}
 blurOnSubmit={false}
 autoFocus={true}
 autoCorrect={true}
 autoCapitalize="none"
 maxLength={25}
/> 

在上面的代码中,我使用了两个Onchagnetext事件,但仅在调用验证另一个的事件工作不起作用的情况下,才没有价值。为什么要修复它。 如何使用两个Onchangetext事件?

1 个答案:

答案 0 :(得分:1)

您不需要两个onChangeText方法。

如果您想一起验证和使用setState,则可以

   ...
   onChangeText={userName => this.setState({ userName },
    () => this.validate(username, 'username)})} 

setState中的回调确保一旦setState完成对state

的更新后,您正在调用该方法。