From f76a0f4b0e488530c1e715ecaa824fca7790dddd Mon Sep 17 00:00:00 2001 From: Eug-VS Date: Mon, 6 Jan 2020 01:53:47 +0300 Subject: Delay scoreboard update, add progress indicator Wait for the Header>Tabs>Indicator to get into place so it doesn't freeze when it comes to rendering new massive frame. --- src/components/Scoreboard/Scoreboard.js | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'src/components') diff --git a/src/components/Scoreboard/Scoreboard.js b/src/components/Scoreboard/Scoreboard.js index 47e306e..93ec2f0 100644 --- a/src/components/Scoreboard/Scoreboard.js +++ b/src/components/Scoreboard/Scoreboard.js @@ -6,25 +6,30 @@ import { Grid, } from "@material-ui/core"; +import { makeStyles } from "@material-ui/core/styles"; +import LinearProgress from '@material-ui/core/LinearProgress'; + import { get } from "../../requests"; import SolutionCard from "../SolutionCard/SolutionCard"; -import { makeStyles } from "@material-ui/core/styles"; const useStyles = makeStyles(theme => ({ pageHeader: { textAlign: 'center', margin: theme.spacing(2), - } + }, })); const Scoreboard = () => { const classes = useStyles(); const [solutions, setSolutions] = useState([]); - const updateSolutions = async () => { - const response = await get('solutions/'); - await setSolutions(response.data); + const updateSolutions = () => { + get('solutions/').then(response => { + setTimeout(() => { + setSolutions(response.data); + }, 250); + }); }; const removeSolution = (id) => { @@ -40,6 +45,7 @@ const Scoreboard = () => { Scoreboard + {(solutions.length === 0) && } {solutions.map(solution => ( -- cgit v1.2.3