Advertisement
Guest User

Untitled

a guest
Aug 21st, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.79 KB | None | 0 0
  1. import React from "react";
  2. import { Button, FormGroup, FormControl, ControlLabel } from "react-bootstrap";
  3. import API from "../../utils/API";
  4.  
  5. export class Signup extends React.Component {
  6. state = {
  7. email: "",
  8. password: "",
  9. cpassword: ""
  10. };
  11. send = async () => {
  12. const { email, password, cpassword } = this.state;
  13. if (!email || email.length === 0) return;
  14. if (!password || password.length === 0 || password !== cpassword) return;
  15. try {
  16. const { data } = await API.signup({ email, password });
  17. localStorage.setItem("token", data.token);
  18. window.location = "/dashboard";
  19. } catch (error) {
  20. console.error(error);
  21. }
  22. };
  23. handleChange = (event) => {
  24. this.setState({
  25. [event.target.id]: event.target.value
  26. });
  27. };
  28. render() {
  29. const { email, password, cpassword } = this.state;
  30. return (
  31. <div className="Login">
  32. <FormGroup controlId="email" bsSize="large">
  33. <ControlLabel>Email</ControlLabel>
  34. <FormControl
  35. autoFocus
  36. type="email"
  37. value={email}
  38. onChange={this.handleChange}
  39. />
  40. </FormGroup>
  41. <FormGroup controlId="password" bsSize="large">
  42. <ControlLabel>Password</ControlLabel>
  43. <FormControl
  44. value={password}
  45. onChange={this.handleChange}
  46. type="password"
  47. />
  48. </FormGroup>
  49. <FormGroup controlId="cpassword" bsSize="large">
  50. <ControlLabel>Confirm Password</ControlLabel>
  51. <FormControl
  52. value={cpassword}
  53. onChange={this.handleChange}
  54. type="password"
  55. />
  56. </FormGroup>
  57. <Button onClick={this.send} block bsSize="large" type="submit">
  58. Inscription
  59. </Button>
  60. </div>
  61. );
  62. }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement