Guest User

Untitled

a guest
Nov 3rd, 2018
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.53 KB | None | 0 0
  1. import React, { Component } from 'react';
  2. import PropTypes from 'prop-types';
  3. import { connect } from 'react-redux';
  4. import { login } from '../actions/auth';
  5.  
  6. class Login extends Component {
  7. static propTypes = {
  8. login: PropTypes.func.isRequired,
  9. }
  10.  
  11. constructor(props) {
  12. super(props);
  13. this.state = {
  14. username: '',
  15. password: '',
  16. };
  17. }
  18.  
  19. onSubmit = (e) => {
  20. e.preventDefault();
  21. const { username, password } = this.state;
  22. const { login } = this.props;
  23. login(username, password);
  24. }
  25.  
  26. render() {
  27. return (
  28. <form onSubmit={this.onSubmit}>
  29. <div className="col-md-offset-5 col-md-3">
  30. <h4>Blueprint Login</h4>
  31. <div className="input-group mb-3">
  32. <input
  33. type="text"
  34. className="form-control input-sm chat-input"
  35. placeholder="username"
  36. onChange={e => this.setState({ username: e.target.value })}
  37. />
  38. <input
  39. type="password"
  40. className="form-control input-sm chat-input"
  41. placeholder="password"
  42. onChange={e => this.setState({ password: e.target.value })}
  43. />
  44. </div>
  45. <button type="submit" className="btn btn-primary btn-md">
  46. Login
  47. </button>
  48. </div>
  49. </form>
  50. );
  51. }
  52. }
  53.  
  54. const mapDispatchToProps = (dispatch) => {
  55. return {
  56. login: (username, password) => {
  57. return dispatch(login(username, password));
  58. },
  59. };
  60. };
  61.  
  62. export default connect(null, mapDispatchToProps)(Login);
Add Comment
Please, Sign In to add comment