include events in group query

This commit is contained in:
Michael Fatemi 2021-07-14 21:10:50 -04:00
parent c1d7741f74
commit 7462b2db28
3 changed files with 11 additions and 14 deletions

View File

@ -154,7 +154,7 @@ export default function Event({
<UISecondaryBox> <UISecondaryBox>
<div style={{ textAlign: 'center' }}> <div style={{ textAlign: 'center' }}>
<UISecondaryHeader>{name}</UISecondaryHeader> <UISecondaryHeader>{name}</UISecondaryHeader>
<GroupName group={group} /> {group && <GroupName group={group} />}
</div> </div>
<EventDetails {...{ startTime, endTime, formattedAddress }} /> <EventDetails {...{ startTime, endTime, formattedAddress }} />
<UIButton <UIButton

View File

@ -23,7 +23,7 @@ export default function Group({ group }: { group: IGroup }) {
<br /> <br />
<EventCreatorLink group={group} /> <EventCreatorLink group={group} />
<br /> <br />
{events && events.length > 0 ? ( {group.events.length > 0 ? (
<EventStream events={group.events} /> <EventStream events={group.events} />
) : ( ) : (
<span> <span>

View File

@ -1,7 +1,7 @@
import { useEffect, useState } from 'react'; import { useEffect, useState } from 'react';
import { useParams } from 'react-router'; import { useParams } from 'react-router';
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
import { getGroup, getGroupEvents } from '../api'; import { getGroup } from '../api';
import { IGroup } from '../types'; import { IGroup } from '../types';
import Group from './Group'; import Group from './Group';
@ -11,19 +11,16 @@ export default function GroupPage() {
const [group, setGroup] = useState<IGroup | null>(null); const [group, setGroup] = useState<IGroup | null>(null);
useEffect(() => { useEffect(() => {
if (isNaN(+id)) {
setLoading(false);
return;
}
async function load() { async function load() {
setLoading(true); setLoading(true);
try { getGroup(+id)
const group = await getGroup(+id); .then(setGroup)
const events = await getGroupEvents(+id); .finally(() => setLoading(false));
setGroup({ ...group, events });
} catch (e) {
console.error(e);
setGroup(null);
}
setLoading(false);
} }
load(); load();