NextJS
NextJS est un Framework FullStack basé sur ReactJS, côté serveur et côté client.
Installation
NodeJS requis
Création projet
Création du projet :
npx create-next-app@latest
Eventuellement avec le support typeScript :
npx create-next-app@latest --ts
Démarrage du serveur
cd my-next-app npm run dev
Routage
Avec App router, le routage est basé sur la structure des dossiers à partir de app.
- Chaque dossier représente un segment de route
- Les routes se concrétisent et sont accessibles à partir du moment où elles contiennent le fichier page.jsx/tsx
Layout
app/layout.jsx correspond au main layout, et permet de définir la structure de base des pages.
Recupération de données
Côté serveur
Server Side Rendering
Sollicité côté serveur à chaque requête.
export default function Home({data}) { return ( <> <UIList objects={data}/> </ > ) } export async function getServerSideProps() { const res = await fetch(API_URL) const data = await res.json() return { props: { data } } }
Static Site Generation
export default function Home({data}) { return ( <> <UIList objects={data}/> </ > ) } export async function getStaticProps() { const res = await fetch(API_URL) const data = await res.json() return { props: { data } } }