diff --git a/front/src/chat/App.jsx b/front/src/chat/App.jsx index e7595a4..e06c02f 100644 --- a/front/src/chat/App.jsx +++ b/front/src/chat/App.jsx @@ -8,7 +8,7 @@ import AppZalupa from "./components/layout/AppZalupa.jsx"; export default function App() { return - + {/**/} diff --git a/front/src/chat/api.js b/front/src/chat/api.js index f411586..d8dbb38 100644 --- a/front/src/chat/api.js +++ b/front/src/chat/api.js @@ -1,5 +1,10 @@ -export const users= await fetch('http://localhost:8000/api/users', { - method: "GET" +import {cryptoData, cryptoAssets} from "./data.js"; + +export function fakeFetchCrypto() { + return new Promise(resolve => { + setTimeout(() => { + resolve(cryptoData) + }, 2000) }) .then(function (response) { return response.json(); @@ -11,5 +16,30 @@ export const users= await fetch('http://localhost:8000/api/users', { .catch(function (error) { console.log('Ошибка:', error); }); +} +export function fetchAssets() { + return new Promise(resolve => { + setTimeout(() => { + resolve(cryptoAssets) + }, 2000) + }) +} + +export async function fetchUsers() { + return (fetch('http://localhost:8000/api/users', { + method: "GET" +}) + .then(function (res) { + return res.json(); + }) + .then(function (data) { + console.log(data); + return data; + }) + .catch(function (err) { + console.log('Ошибка:', err); + }) + ) +} diff --git a/front/src/chat/components/layout/AppContent.jsx b/front/src/chat/components/layout/AppContent.jsx index c8ba012..c24df99 100644 --- a/front/src/chat/components/layout/AppContent.jsx +++ b/front/src/chat/components/layout/AppContent.jsx @@ -1,5 +1,6 @@ -import {Layout} from "antd"; -import {users} from "../../api.js"; +import {Layout, Spin} from "antd"; +import {fakeFetchCrypto, fetchAssets, fetchUsers} from "../../api.js"; +import {useEffect, useState} from "react"; @@ -12,6 +13,26 @@ const contentStyle = { padding: '1rem', }; -export default function () { - return (users) + + +export default function AppContent() { + const [loading, setLoading] = useState(true) + const [users, setUsers] = useState([]) + const [assets, setAssets] = useState([]) + + + useEffect(() => { + async function preload() { + const result = await fetchUsers() + + setUsers(result) + setLoading(false) + } + preload() + }, []); + + if (loading) { + return + } + return ({users[0].email}) } diff --git a/front/src/chat/components/layout/AppFooter.jsx b/front/src/chat/components/layout/AppFooter.jsx index 7a6e5a9..226e499 100644 --- a/front/src/chat/components/layout/AppFooter.jsx +++ b/front/src/chat/components/layout/AppFooter.jsx @@ -6,6 +6,6 @@ const footerStyle = { backgroundColor: '#4096ff', }; -export default function () { +export default function AppFooter() { return (Footer) } \ No newline at end of file diff --git a/front/src/chat/components/layout/AppHeader.jsx b/front/src/chat/components/layout/AppHeader.jsx index 8dddf7d..a5d91ed 100644 --- a/front/src/chat/components/layout/AppHeader.jsx +++ b/front/src/chat/components/layout/AppHeader.jsx @@ -8,6 +8,6 @@ const headerStyle = { backgroundColor: '#4096ff', }; -export default function () { +export default function AppHeader() { return (Header) } diff --git a/front/src/chat/components/layout/AppZalupa.jsx b/front/src/chat/components/layout/AppZalupa.jsx index 9da1c44..a3e6ad6 100644 --- a/front/src/chat/components/layout/AppZalupa.jsx +++ b/front/src/chat/components/layout/AppZalupa.jsx @@ -5,7 +5,7 @@ import { Avatar, Button, Skeleton, List} from 'antd'; const count = 3; const fakeDataUrl = `http://localhost:8000/api/users`; -export default function () { +export default function AppZalupa() { const [initLoading, setInitLoading] = useState(true); const [loading, setLoading] = useState(false); const [data, setData] = useState([]);