brainlet-react/bfrontend/src/Components/App.js

39 lines
992 B
JavaScript
Raw Normal View History

2020-12-29 22:55:53 +02:00
import Login from './Auth/Login';
import Root from './Root';
import Authenticator from './../Authenticator';
2020-12-29 22:55:53 +02:00
import { useEffect } from 'react';
import { useDispatch, connect } from 'react-redux'
import { BrowserRouter, Switch, Route } from 'react-router-dom';
function App({ user }) {
const dispatch = useDispatch();
useEffect(() => {
2020-12-29 22:55:53 +02:00
Authenticator.getLoggedInUserFromCookie()
.then((res) => {
2020-12-29 22:55:53 +02:00
dispatch({ type: 'authenticator/updatelocaluserobject', user: res })
});
2020-12-29 22:55:53 +02:00
}, [dispatch]);
return (
2020-12-29 22:55:53 +02:00
<BrowserRouter>
<Switch>
<Route path="/login">
2020-12-29 22:55:53 +02:00
<Login />
</Route>
<Route path="/">
<Root user={user} />
</Route>
</Switch>
2020-12-29 22:55:53 +02:00
</BrowserRouter>
);
2020-12-29 22:55:53 +02:00
}
const stateToProps = (state) => {
return {
user: state?.user || undefined
};
};
export default connect(stateToProps)(App);