form in react native code example
Example 1: react text input onchange
class NameForm extends React.Component {
constructor(props) {
super(props);
this.state = {value: ''};
this.handleChange = this.handleChange.bind(this);
this.handleSubmit = this.handleSubmit.bind(this);
}
handleChange(event) { this.setState({value: event.target.value}); }
handleSubmit(event) {
alert('A name was submitted: ' + this.state.value);
event.preventDefault();
}
render() {
return (
<form onSubmit={this.handleSubmit}>
<label>
Name:
<input type="text" value={this.state.value} onChange={this.handleChange} /> </label>
<input type="submit" value="Submit" />
</form>
);
}
}
Example 2: react native form input
import React, { useState } from 'react'
import * as rn from 'react-native'
const FormLogin = () => {
const [value, setValue] = useState({
username: '',
password: ''
})
const onPress = () => {
rn.Alert.alert(JSON.stringify(value))
setValue({
username: '',
password: ''
})
}
return (
<rn.View style={styles.container}>
<rn.Text style={styles.titleLogin}>Form Login</rn.Text>
<rn.View style={styles.form}>
<rn.TextInput
style={styles.input}
placeholder='enter username'
placeholderTextColor='lightgrey'
onChangeText={(text) => setValue({ ...value, username: text })}
value={value.username}
autoCompleteType='off'
/>
<rn.TextInput
style={styles.input}
placeholder='enter password'
placeholderTextColor='lightgrey'
onChangeText={(text) => setValue({ ...value, password: text })}
value={value.password}
autoCompleteType='off'
secureTextEntry
/>
<rn.View style={styles.button}>
<rn.Button title='login' color='green' onPress={onPress} />
</rn.View>
</rn.View>
</rn.View>
)
}
const styles = rn.StyleSheet.create({
container: {
flex: 1,
justifyContent: 'flex-start',
alignItems: 'center',
padding: 10,
margin: 10
},
titleLogin: {
fontSize: 22,
textAlign: 'center',
color: 'black',
fontWeight: '600'
},
form: {
width: '100%',
height: 'auto',
justifyContent: 'center',
alignItems: 'center',
padding: 5,
marginTop: 5
},
input: {
width: 350,
height: 40,
padding: 5,
margin: 5,
borderWidth: 1,
borderColor: 'grey',
borderStyle: 'solid',
borderRadius: 3
},
button: {
width: 360,
height: 40,
padding: 5,
margin: 5,
borderRadius: 3
}
})
export default FormLogin