Project page (#4)

* wait for all promisses to be resolved before rendering page

* define hooks inside useEffect
This commit is contained in:
Ruidy 2020-05-05 19:34:17 +02:00 committed by GitHub
parent 17f67ccebf
commit 438295325c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 7 deletions

View file

@ -52,6 +52,7 @@ const TicketList: FC<TicketListProps> = ({
};
const [showNew, setShowNew] = useState(false);
let filteredTickets = tickets.filter(
(t) =>
t.status !== "Done" &&

View file

@ -27,7 +27,6 @@ const ProjectController: FC = () => {
const project: Project = await Projects.get(id);
if (project !== undefined) {
setProject(project);
setIsLoading(false);
}
} catch (ex) {
setHasError(true);
@ -42,7 +41,6 @@ const ProjectController: FC = () => {
const response: User[] = await Users.all();
if (response !== undefined) {
setAllUsers(response);
setIsLoading(false);
}
} catch (ex) {
setHasError(true);
@ -63,16 +61,19 @@ const ProjectController: FC = () => {
setError(ex);
}
};
if (id !== undefined) {
getProject(id);
getAllUsers();
getAllProjects();
// wait for all data to be fetched
Promise.all([getProject(id), getAllUsers(), getAllProjects()])
.then(() => setIsLoading(false))
.catch((ex) => {
setHasError(true);
setError(ex);
});
} else {
setHasError(true);
setError("Bad Request");
}
}, [id, getTokenSilently]);
}, [id]);
if (hasError) {
return <ErrorController error={error} />;