Since the /events route is prerendered as static content, the delegateEvents function — which determines whether an event is ongoing, is upcoming, or is in the past — is run at build time. What this effectively means is in its current state, we have to push a new deployment for the Events page to be up-to-date.
Desired outcome: the Events page accurately displays the status of events within at most an hour.
Fixes already attempted:
export const revalidate = 3600
For some reason, revalidate appears to be completely ignored
export const dynamic = 'force-dynamic'
This causes every referenced public/ asset to ENOENT. I'm guessing this is due to a discrepancy in the fact /events is server-rendered, but all events themselves are statically generated.
Refactoring EventList to designateEvents rather than events/page.tsx
EventList (Client Component) cannot render Event (Server Component) — results in events/page.tsx error when exporting generateMetadata()
Since the
/events
route is prerendered as static content, thedelegateEvents
function — which determines whether an event is ongoing, is upcoming, or is in the past — is run at build time. What this effectively means is in its current state, we have to push a new deployment for the Events page to be up-to-date.Desired outcome: the Events page accurately displays the status of events within at most an hour.
Fixes already attempted:
export const revalidate = 3600
revalidate
appears to be completely ignoredexport const dynamic = 'force-dynamic'
public/
asset toENOENT
. I'm guessing this is due to a discrepancy in the fact/events
is server-rendered, but all events themselves are statically generated.EventList
todesignateEvents
rather thanevents/page.tsx
EventList
(Client Component) cannot renderEvent
(Server Component) — results inevents/page.tsx
error when exportinggenerateMetadata()