리액트로 웹 사이트의 구조를 구현하는 데 익숙해지기 위함이다.
여러 section들로 구성된 웹 페이지를 구현하다 보니, jsx파일 및 css파일들의 구조화가 필요하다는 것을 느꼈다.
찾아보니 리액트 사용자들은 이미 어느정도 정형화된 폴더구조를 사용하고 있었다.
src폴더 밑에 기본적으로 components폴더와 containers폴더를 두고 리소스들은 asset폴더에 포함시킨채 확장해나가는 방식이었다.
containers 폴더를 예로 들어보자.
위와 같이 구조화 한다.
index.js
는 container폴더의 파일들을 app.js에서 쉽게 import하기 위해 export를 해주는 역할을 한다.
// 📄containers/index.js
import Header from './Header/Header';
import Footer from './Footer/footer';
import Blog from './Blog/blog';
export {Header, Footer, Blog};
// 📄app.jsx
import {Header, Footer, Blog} from './containers';
위와 같이 한 번에 import를 할 수 있다.
이름을 index.js
로 한 이유는 from 뒤에 ./containers/index.js
가 아닌 ./containers
만 해도 되기 때문이다.
또한 새롭게 알게된 CSS 프로퍼티들도 있다.
background-clip: text;
: 배경 이미지를 텍스트 위치에만 표시한다.-webkit-
을 사용하도록 한다.-webkit-background-clip: text;
[사용된 이미지 출처] : Dall-E로 만든 이미지