>웹 프론트엔드 >CSS 튜토리얼 >`pages/_app.js` 외부의 Next.js에서 전역 CSS를 가져올 수 없는 이유는 무엇입니까?

`pages/_app.js` 외부의 Next.js에서 전역 CSS를 가져올 수 없는 이유는 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-11 05:35:16237검색

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

"전역 CSS는 사용자 정의 이외의 파일에서 가져올 수 없습니다.": 문제 이해 및 해결

Next.js 성능과 코드 구조를 강조하는 React 애플리케이션을 구축하는 데 널리 사용되는 프레임워크입니다. 그 기능 중 하나는 전역 CSS 기능으로, 이를 통해 애플리케이션 전체에서 전역적으로 사용할 수 있는 CSS 파일을 가져올 수 있습니다. 그러나 특정 제한 사항 및 업데이트로 인해 이 기능을 사용할 때 오류가 발생할 수 있습니다.

최근 사용자에게 "전역 CSS는 사용자 정의 <앱> 이외의 파일에서 가져올 수 없습니다."라는 오류 메시지가 표시되었습니다. 이 오류는 전역 CSS 가져오기를 페이지/_app.js 파일로 이동해야 함을 나타냅니다. 성공적인 애플리케이션 개발을 위해서는 이 오류의 원인을 이해하고 올바른 솔루션을 적용하는 것이 중요합니다.

오류의 원인

Next.js 9.2는 글로벌 방식에 변화를 가져왔습니다. CSS가 처리됩니다. 이전에는 페이지, 구성 요소, 유틸리티 파일을 포함하여 프로젝트의 모든 파일에서 전역 CSS를 가져올 수 있었습니다. 그러나 Next.js 9.2 이상에서는 전역 CSS를 Custom 페이지/_app.js 파일에 있는 구성 요소입니다.

문제 해결

오류를 해결하려면 다음 세 가지 간단한 단계를 따라야 합니다.

  1. 내장된 Next.js CSS 로더를 사용하세요. 레거시를 사용하는 대신 @zeit/next-sass 패키지의 경우 "sass" 패키지를 설치하여 내장 Next.js CSS 로더를 사용하도록 전환하세요.
  2. next.config.js 제거: 제거할 수 있습니다. next.config.js 파일을 삭제하거나 CSS 로딩과 관련된 구성 변경 사항이 포함되어 있지 않은지 확인하세요.
  3. 전역 이동 CSS: 오류 메시지에 제안된 대로 main.scss import 문을 페이지/_app.js 파일로 이동합니다.

다음은 전역 CSS가 포함된 업데이트된 페이지/_app.js 파일의 예입니다. 가져오기:

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

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

추가 정보

특정 구성요소나 페이지에만 스타일을 추가하려는 경우 내장된 CSS 모듈 지원을 활용할 수 있습니다. . 예를 들어, Button.js 구성 요소에 스타일을 추가하려면 버튼.module.scss라는 Sass 파일을 생성하고 구성 요소 내에서 가져올 수 있습니다.

위에 설명된 단계를 따르면 문제를 효과적으로 해결할 수 있습니다. "사용자 정의 이외의 파일에서는 전역 CSS를 가져올 수 없습니다." 오류를 확인하고 Next.js 애플리케이션의 전역 CSS가 올바르게 처리되는지 확인하세요.

위 내용은 `pages/_app.js` 외부의 Next.js에서 전역 CSS를 가져올 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.