import React, { useEffect, useState } from 'react' import { Router, Route, Redirect, withRouter, Switch } from 'react-router-dom'; import { Provider, useSelector } from 'react-redux'; import { store } from './components/redux/index'; import createHistory from "history/createBrowserHistory"; import './App.css'; // import logo from './logo.svg'; // импорт страниц import { CUser } from './components/user'; import { CFeed } from './components/feed'; import { CComments } from './components/post'; import { CreatePost } from './components/create_post'; import AuthReg from './components/auth_reg'; // import Header from './components/structure/header'; import { CHeader } from './components/structure/header'; import Footer from './components/structure/footer'; import Search from './components/search'; import Page404 from './components/404/page404'; // url проекта export const url = 'http://hipstagram.node.ed.asmer.org.ua/' const history = createHistory() // Приватный роутинг - удалить, если не буду использовать { // фейковый авторизатор const fakeAuth = { isAuthenticated: false, authenticate(cb) { this.isAuthenticated = true setTimeout(cb, 100) }, signout(cb) { this.isAuthenticated = false setTimeout(cb, 100) } } // кнопка разлогина, которая рисуется, если залогинен const AuthButton = withRouter(({ history }) => ( fakeAuth.isAuthenticated && (

Welcome!

) )) const PrivateRoute = ({ component: Component, ...rest }) => ( ( typeof localStorage.authToken === 'string' ? : )} /> ) } // роутинг в зависимости от того.залогинен пользователь или нет const MainRoutes = () => { const currentState = useSelector(state => state?.auth?.token) return (
{currentState ? : {/* */} {/* */} }
) } export default function App() { return (
) }