폴더 구조 관련 질문
135
작성자 없음
投稿した質問数 0
제로초님 안녕하세요 expo 프로젝트의 폴더 구조에 대해서 고민이 있습니다.!!
현재 src/app 폴더에서 페이지들을 관리하고 있고
각 페이지 내부에서만 사용하는 하위 컴포넌트들은 src/app/settings/_components/AccountSettingsSection.tsx
와 같이 _components 폴더 하위에 배치하고, named export를 통해 라우트로 잡히지 않게 하고 있습니다.
문제는 없지만 프로젝트를 실행시키면
WARN Route "./settings/_components/AccountSettingsSection/AccountSettingsSection.tsx" is missing the required default export. Ensure a React component is exported as default.
라는 경고 메시지가 app/ 내부에서 named export 한 모든 하위 컴포넌트를 대상으로 출력됩니다.
Next.js처럼 _components 내부의 하위 컴포넌트들은 완전히 무시하도록 하고 싶은데 아무리 찾아봐도 무시할 방법이 없는 거 같습니다 ㅠ
제로초님께서는 어떤 방법으로 페이지 내부 하위 컴포넌트들을 배치하시는지 궁금합니다..!! 관리하기 용이한 폴더 구조가 있다면 추천해주실 수 있으신가요??
回答 2
0
워닝이라서 무시하셔도 되긴 합니다. 엑스포에서 app 폴더 안에서 발생하는 과한 워닝입니다. 워닝을 꼭 없애시려면 expo쪽에서 패치해주지 않는다면 app폴더 바깥으로 꺼내는 방법밖에는 없습니다.
0
안녕하세요, 인프런 AI 인턴입니다.
이영훈님께서 expo 프로젝트의 폴더 구조 및 경고 메시지와 관련하여 고민이 있으신 점 이해합니다. Next.js와는 달리 React Native with Expo 프로젝트에서는 특정 폴더나 파일을 무시하도록 설정하는 방식이 따로 존재하지 않기 때문에, React Native 특성에 맞춘 폴더 구조 관리가 중요합니다.
폴더 구조 관리:
- 현재 이영훈님께서 사용하시는 것처럼
_components와 같은 특수 폴더를 만드는 것은 좋습니다. 그러나named export대신default export를 사용하거나 하위 컴포넌트들에 대해서는 별도의components폴더를 만들어 관리하는 방법도 고려해보실 수 있습니다. 이를 통해_components폴더를 React Native에서는 단순 추상화 레이어로 사용하게 됩니다.
- 현재 이영훈님께서 사용하시는 것처럼
경고 메시지 해결:
default export미사용으로 인한 경고 메시지를 피하기 위해 프로젝트의 eslint 설정에서 해당 경고를 무시하도록 설정하는 방법을 고려할 수 있습니다..eslintrc파일에 경고를 무시할 규칙을 추가해 주세요.
- 또한,
components폴더 내에서 다른 컴포넌트에서 사용하지 않는 React 컴포넌트의 경우 경고 메시지가 발생하지 않도록,default export로 변환하여 예상지점에 경고가 생기지 않도록 할 수 있습니다.
유사한 Q&A 확인하기:
- 관련될 수 있는 질문과 답변 예시를 찾지 못했지만, 서브 컴포넌트의 관리법-폴더 구조에 대한 고민이라는 게시글에서 컴포넌트별 폴더구조에 대한 제안이 언급된 적이 있습니다. 이 게시글에서는 여러 컴포넌트를 관리하는 데 있어서의 폴더 배치 방법을 논의하였습니다.
- 관련될 수 있는 질문과 답변 예시를 찾지 못했지만, 서브 컴포넌트의 관리법-폴더 구조에 대한 고민이라는 게시글에서 컴포넌트별 폴더구조에 대한 제안이 언급된 적이 있습니다. 이 게시글에서는 여러 컴포넌트를 관리하는 데 있어서의 폴더 배치 방법을 논의하였습니다.
이러한 추천 사항들을 참고하셔서 프로젝트 폴더 구조를 한층 깔끔하게 관리하실 수 있길 바랍니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
expo-blur 사용하면서 생긴 버그입니다.
0
122
3
router.navigate 동작이 달라졌을까요?
0
66
1
Toast 기능
0
79
2
onEndReached 함수가 바로 호출 되지 않는 이슈
1
67
1
expo push service에 관한 질문
0
80
2
ios에서 개발중이신 분들은
1
89
1
[질문아님] tabBarLabel 대신 tabBarShowLabel
1
60
1
Location.getCurrentPositionAsync({}); 에러
1
129
3
.
0
123
2
EAS preview 빌드 후 Device에서 카카오 로그인 브라우저가 안켜짐
0
123
2
혹시 리액트네이티브 관련해서 좋은 참고서도 있을까요??
0
107
1
제로초님께서는 Nativewind는 사용안하지는지 궁금합니다.
1
285
2
.
0
94
2
eas build:configure 안되는데, "git"이 반드시 설치되어 있어야 하나요?
0
83
2
.
0
107
2
혹시 해당 강의 보면서 테스트용으로 사용할 맥북을 구매할 예정인데 어느정도 스펙 이상으로 사야 할지 의견 받아볼수있을까요?
0
76
2
.
0
116
1
.
0
124
2
기기에서는 네트워크 에러가 납니다.
0
103
2
빌드 문의드립니다.
0
75
1
.
0
129
2
.
0
84
2
Expo-blur unimplement 오류
0
111
3
.
0
108
2

