Guest User

Untitled

a guest
Jul 22nd, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.69 KB | None | 0 0
  1. class Login extends React.Component {
  2. constructor(props) {
  3. super(props);
  4. this.state = {
  5. form_username: '',
  6. form_password: '',
  7. }
  8. }
  9. async saveKey(key, value) {
  10. try {
  11. await AsyncStorage.setItem(key, value);
  12. } catch (error) {
  13. console.log("Error saving data" + error);
  14. }
  15. }
  16.  
  17. goLogin() {
  18. var self = this;
  19. let user = this.state.form_username;
  20. let pass = this.state.form_password;
  21. axios.post('http://www.example.com/api/token/create/',
  22. {'username': user, 'password': pass})
  23. .then(function (response) {
  24. console.log('Token ' + response.data.auth_token);
  25. //save token to AsyncStorage
  26. self.saveKey('userToken', 'Token ' + response.data.auth_token)
  27. //dispatch action to update redux store
  28. dispatch(loginSuccess(response.data.auth_token))
  29.  
  30.  
  31. }).
  32. catch(function (response) {
  33. console.log(response);
  34. })
  35. }
  36.  
  37. render() {
  38. return (
  39. <Form>
  40. <Item floatingLabel>
  41. <Label>Username</Label>
  42. <Input
  43. ref="UsernameInput"
  44. onChangeText={(value) => this.setState({form_username: value})}
  45. value = {this.state.form_username}
  46. />
  47. </Item>
  48. <Item floatingLabel last>
  49. <Label>Password</Label>
  50. <Input
  51. ref="PasswordInput"
  52. secureTextEntry={true}
  53. returnKeyType={'go'}
  54. onSubmitEditing={() => this.goLogin()}
  55. onChangeText={(value) => this.setState({form_password: value})}
  56. value = {this.state.form_password}
  57. />
  58. </Item>
  59. </Form>
  60. )
  61. }
  62. }
  63.  
  64. const mapStateToProps = state => {
  65. return {
  66. token: state.token,
  67. loggedIn: state.loggedIn,
  68. }
  69. }
  70.  
  71. connect(mapStateToProps)(Login)
  72.  
  73.  
  74. export default Login
Add Comment
Please, Sign In to add comment