Maison >interface Web >tutoriel CSS >Pourquoi ne puis-je pas importer des CS mondiaux dans Next.js en dehors de `pages / _app.js`?

Pourquoi ne puis-je pas importer des CS mondiaux dans Next.js en dehors de `pages / _app.js`?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-11 05:35:16237parcourir

Why Can't I Import Global CSS in Next.js Outside of `pages/_app.js`?

"Le CSS global ne peut pas être importé à partir de fichiers autres que votre personnalisée" : Comprendre et résoudre le problème

Suivant.js est un framework populaire pour créer des applications React qui met l'accent sur les performances et la structure du code. L'une de ses fonctionnalités est la fonctionnalité CSS globale, qui vous permet d'importer des fichiers CSS disponibles globalement dans toute votre application. Cependant, certaines limitations et mises à jour peuvent entraîner des erreurs lors de l'utilisation de cette fonctionnalité.

Récemment, les utilisateurs ont rencontré le message d'erreur : "Le CSS global ne peut pas être importé à partir de fichiers autres que votre personnalisée." Cette erreur indique que les importations CSS globales doivent être déplacées vers le fichier pages/_app.js. Comprendre la raison de cette erreur et appliquer la bonne solution est crucial pour le développement réussi d'une application.

Raison de l'erreur

Next.js 9.2 a introduit des changements dans la manière dont CSS est géré. Auparavant, vous pouviez importer du CSS global à partir de n'importe quel fichier de votre projet, y compris des pages, des composants et des fichiers utilitaires. Cependant, dans Next.js 9.2 et versions ultérieures, le CSS global doit être importé exclusivement à partir de l'application personnalisée composant, qui se trouve dans le fichier pages/_app.js.

Résolution du problème

Pour résoudre l'erreur, vous devez suivre trois étapes simples :

  1. Utilisez le chargeur CSS Next.js intégré : Au lieu d'utiliser l'héritage @zeit/next-sass, passez à l'utilisation du chargeur CSS Next.js intégré en installant le package "sass".
  2. Supprimez next.config.js : Vous pouvez supprimer le fichier next.config.js ou assurez-vous qu'il ne contient aucune modification de configuration liée au chargement CSS.
  3. Déplacez le fichier global CSS : Déplacez votre instruction d'importation main.scss vers le fichier pages/_app.js, comme suggéré dans le message d'erreur.

Exemple

Voici un exemple de fichier pages/_app.js mis à jour avec le CSS global import :

import '../global-styles/main.scss'

export default function MyApp({ Component, pageProps }) {
  return <Component {...pageProps} />
}

Informations supplémentaires

Si vous souhaitez ajouter des styles uniquement à un composant ou une page spécifique, vous pouvez utiliser la prise en charge intégrée des modules CSS . Par exemple, pour ajouter des styles à un composant Button.js, vous pouvez créer un fichier Sass nommé bouton.module.scss et l'importer dans le composant.

En suivant les étapes décrites ci-dessus, vous pouvez résoudre efficacement le problème. "Le CSS global ne peut pas être importé à partir de fichiers autres que votre personnalisée." erreur et assurez-vous que le CSS global de votre application Next.js est correctement géré.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn