Browse Source

auth: fix login

master
Garrit Franke 3 years ago
parent
commit
ee3777d769
Signed by: garrit
GPG Key ID: 65586C4DDA55EA2C
  1. 9
      client/README.md
  2. 2
      client/src/components/Header.jsx
  3. 8
      client/src/components/Register.jsx
  4. 2
      client/src/index.js
  5. 12
      client/src/service/UserService.ts

9
client/README.md

@ -1,3 +1,8 @@
# react-parcel-boilerplate
# shape.camp Client
These environment variables need to be set before launching the application
```sh
API_BASE_PATH
```
A minimal react boilerplate that uses parcel to bundle all of your assets

2
client/src/components/Header.jsx

@ -11,7 +11,7 @@ export default function Head() {
useEffect(() => {
if (token) {
UserService.getUser().then((user) => setUsername(user.fullName));
UserService.getUser().then((user) => setUsername(user.username));
}
}, []);

8
client/src/components/Register.jsx

@ -8,8 +8,8 @@ export default function RegisterPage() {
const [error, setError] = useState();
const history = useHistory();
const onSubmit = ({ email, password, fullName }) => {
UserService.register(email, password, fullName)
const onSubmit = ({ email, password, username }) => {
UserService.register(email, password, username)
.then(() => history.push("/login"))
.catch((err) => {
setError(err);
@ -35,8 +35,8 @@ export default function RegisterPage() {
<Form.Item label="Password" name="password">
<Input type="password"></Input>
</Form.Item>
<Form.Item label="Full Name" name="fullName">
<Input type="name"></Input>
<Form.Item label="Username" name="username">
<Input type="username"></Input>
</Form.Item>
<Form.Item {...tailLayout}>
<Button type="primary" htmlType="submit">

2
client/src/index.js

@ -1,4 +1,4 @@
import React, { Component } from "react";
import React from "react";
import ReactDOM from "react-dom";
import App from "../src/components/App";

12
client/src/service/UserService.ts

@ -1,10 +1,10 @@
import axios from "axios";
import axios from "./api-client";
const basepath = process.env.API_BASE_PATH;
export interface User {
id: String;
fullName: String;
username: String;
email: String;
}
@ -18,7 +18,7 @@ export default {
return {
id: data._id,
fullName: data.full_name,
username: data.username,
email: data.email,
};
},
@ -36,16 +36,16 @@ export default {
async register(
email: string,
password: string,
fullName: string
username: string
): Promise<User> {
const response = await axios.post(basepath + "/auth/register", {
email,
password,
full_name: fullName,
username: username,
});
const user = response.data;
return { id: user._id, fullName: user.full_name, email: user.email };
return { id: user.id, username: user.username, email: user.email };
},
getToken(): string | undefined {
const cookie = document.cookie

Loading…
Cancel
Save