A szegény ember Reduxa
Issue formerly known as "Question detail context".
A szegény ember Reduxa
Nextjs-sel együtt a Redux nagyon rák (végtelen magic boilerplate), és teljesen elveszik a static site generation képesség, ha beintegráljuk a projektbe, ami hasznos lehetne olyan page-ek esetén mint például az about vagy a hírek.
A cél egy egyszerűbb "félig global" state management megoldás kiépítése a context API és a hook-ok felhasználásával. A provider a page komponensben lenne egyszerűbb (de a useState hooknál komolyabb state managementet igénylő) pagek esetében.
Példa
In page:
export default function QuestionDetailPage({ questionDetail /* from getInitialProps */ }) {
return (
<Page>
<ProvideQuestionDetail data={questionDetail}>
...
</ProvideQuestionDetail>
</Page>
}
In deeply nested component of question detail page:
const { addAnswer } = useQuestionDetail();
...
<Button onClick={e => addAnswer({ text, show_username })>Submit answer</Button>