React에서 export default function vs export function 차이점

2025. 2. 16. 00:11·React
728x90

React를 공부하며 만난 export의 두 가지 형태

안녕하세요, React를 공부하면서 export default function Button()과 export function Button()의 차이에 대해 헷갈렸던 적이 있었어요. 처음엔 "똑같이 export인데 뭐가 다를까?" 싶었는데, 실제로 사용해보면서 중요한 차이를 발견했습니다. 오늘은 이 차이를 정리해보려고 해요! 😊

1️⃣ export default function Button()

// Button.js
export default function Button() {
  return <button>Click Me</button>;
}

사용 방법:

// App.js
import Button from './Button';

function App() {
  return <Button />;
}
export default App;

특징 

✔️ 파일에서 한 개의 기본 내보내기(default export)만 가능해요.
✔️ import할 때 중괄호 {} 없이 원하는 이름으로 가져올 수 있어요.
✔️ 파일명과 달라도 import Btn from './Button';처럼 이름을 바꿀 수 있어요.


2️⃣ export function Button()

// Button.js
export function Button() {
  return <button>Click Me</button>;
}

사용 방법:

// App.js
import { Button } from './Button';

function App() {
  return <Button />;
}
export default App;

특징 

✔️ 같은 파일에서 여러 개의 함수(컴포넌트)를 export할 수 있어요.
✔️ import할 때 중괄호 {}를 꼭 써야 해요.
✔️ import할 때 이름을 바꿀 수 없어요. (예: import { Btn } from './Button'; ❌ 오류 발생)


핵심 차이점 정리

정리

  export default export
내보낼 수 있는 개수 파일당 1개 여러 개 가능
import할 때 {} 없이 사용 {} 필수
이름 변경 가능 여부 가능 불가능

언제 어떤 걸 사용하면 좋을까?

컴포넌트가 하나만 있는 경우 → export default를 주로 사용해요. (ex. Button, Navbar 같은 독립적인 컴포넌트)
여러 개의 유틸 함수나 컴포넌트를 포함하는 경우 → export를 사용해요. (ex. export function add(), export function subtract())


마무리

React에서 export default와 export는 비슷해 보이지만, 실제로 사용해보면 확실한 차이가 있어요.
공부하면서 두 가지 방법을 적절하게 사용하는 것이 중요하다는 걸 느꼈어요!!~!!

혹시 궁금한 점이 있으면 댓글로 남겨주세요! ㅎㅎ  🙌 

728x90
LIST

'React' 카테고리의 다른 글

React의 렌더링과 커밋 과정: 개념부터 이해하기  (4) 2025.02.23
React 상태(State)란 무엇인가?  (0) 2025.02.22
React에서 이벤트 처리하기  (1) 2025.02.21
React 깨끗하고 유지보수하기 쉬운 코드 작성법  (2) 2025.02.16
React에서 상호작용 추가하기: 이벤트 핸들링과 상태 관리  (1) 2025.02.16
'React' 카테고리의 다른 글
  • React 상태(State)란 무엇인가?
  • React에서 이벤트 처리하기
  • React 깨끗하고 유지보수하기 쉬운 코드 작성법
  • React에서 상호작용 추가하기: 이벤트 핸들링과 상태 관리
Mr. Joo
Mr. Joo
  • Mr. Joo
    삽질의 시작
    Mr. Joo
  • 전체
    오늘
    어제
    • 분류 전체보기 (215) N
      • Flutter (70)
      • Android (9)
      • Swift (5) N
      • React (11)
      • 인공지능 (4)
      • CS (10)
      • 개발 뉴스 (103)
      • IT 기기 (1)
      • 알면 유용한 정보 (2)
  • 인기 글

  • 태그

    앱 개발
    react
    앱
    오늘의 이슈
    플러터
    기술 뉴스
    앱개발
    오늘의 뉴스
    개발
    개발 뉴스
    DART
    개발 이슈
    오늘의 기술 뉴스
    이슈
    뉴스
    뉴스 모음
    Flutter
    기술
    Dart 기초
    오늘의 개발 뉴스
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
Mr. Joo
React에서 export default function vs export function 차이점
상단으로

티스토리툴바