Application personnalisée
Next.js utilise le composant App
pour initialiser les pages. Vous pouvez le remplacer et contrôler l'initialisation des pages pour :
- Créer une mise en page partagée entre les changements de page
- Injecter des données supplémentaires dans les pages
- Ajouter du CSS global
Utilisation
Pour remplacer le App
par défaut, créez le fichier pages/_app
comme indiqué ci-dessous :
La prop Component
correspond à la page
active, donc lorsque vous naviguez entre les routes, Component
changera pour la nouvelle page
. Ainsi, toutes les props que vous envoyez à Component
seront reçues par la page
.
pageProps
est un objet contenant les props initiales qui ont été préchargées pour votre page via l'une de nos méthodes de récupération de données, sinon c'est un objet vide.
Bon à savoir :
- Si votre application est en cours d'exécution et que vous ajoutez un
App
personnalisé, vous devrez redémarrer le serveur de développement. Ceci est uniquement nécessaire sipages/_app.js
n'existait pas auparavant.App
ne prend pas en charge les méthodes de récupération de données de Next.js commegetStaticProps
ougetServerSideProps
.
getInitialProps
avec App
L'utilisation de getInitialProps
dans App
désactivera l'Optimisation statique automatique pour les pages sans getStaticProps
.
Nous ne recommandons pas d'utiliser ce modèle. À la place, envisagez d'adopter progressivement le routeur App, qui vous permet de récupérer plus facilement les données pour les pages et les mises en page.