2017-10-02 3 views
1

私はreact-nativeに新しいです。私はTextInputコンポーネントのコンテンツを別のユーザが何らかのテキストを入力したかどうかをチェックするためにその長さを見つける。ユーザーが空のTextInputを残すと、エラーメッセージが表示されます。入力を取得するTextInput値を別の変数にコピーして長さを見つける方法

+0

あなたがonChangeTextを追加し、テキスト入力のテキスト値を取得することができ、https://facebook.github.io/react-native/docs/textinput.html#onchangetextはここにあなたが表示されてくださいすることができ、参照 –

+0

です私はどのようにonChangeTextを追加し、テキスト値を取得するコードですか?コールバック関数は、テキスト入力のテキストが変更されたときに呼び出されます。 –

答えて

8

使用onChangeText、

export default class UselessTextInput extends Component { 
    constructor(props) { 
    super(props); 
    this.state = { text: '' }; 
    } 

validation =() => { 
    this.state.text ? Alert.alert('','Valid') : Alert.alert('','Error'); 
} 

render() { 
    return (
    <TextInput 
     onChangeText={(text) => this.setState({text})} 
     value={this.state.text} 
    /> 
    <Button onPress={() => this.validation()}> 
     <Text>Validation</Text> 
    </Button> 
    ); 
} 
} 

私は、役立つことを願って:)

+0

this.state.textを使用して値を取得できます。次のinputTextに検証を適用する場合は、他の検証を作成する必要があると思います。 –

0

あなたはこれを行うことができます別のvariable.Simplyに新しい値をバインドする必要はありません。

constructor(props) { 
    super(props); 
    this.state = { text: '' }; 
} 

onChangeText(text) { 
    // DO WHATEVER YOU NEED TO DO WITH WHAT USER ENTERED!!! 
    if (text) { 
     alert('Blank'); 
    } 
    this.setState({ text }); 
} 

render() { 
    return (
    <TextInput 
     onChangeText={this.onChangeText} 
     value={this.state.text} 
    /> 
    ); 
} 
関連する問題