초기 세팅 가이드라인은 Node.js 와 Visual Studio Code 에디터는 이미 설치되어있다는 상황에 맞추어 작성된 글입니다.
폴더를 오른쪽 클릭해보면 Git Bash Here
라는 것이 있습니다. 선택해줍니다. ( Git 이 컴퓨터에 설치가 되어있어야 보입니다. )
![[Pasted image 20230902094510.png]]
폴더를 오른쪽 클릭하고 터미널(Git Bash Here)을 키면 해당 폴더로 위치지정이 된 채로 터미널이 켜지게 됩니다.
npx create-react-app [프로젝트명]
을 입력하게 되면 react에 관련된 프로젝트 생성이 끝납니다. $ npx create-react-app weread
~'!()*^'
등의 일부 특수문자를 포함하면 에러가 생기기 떄문에 소문자 (kebab-case)로 작성하는 것이 일반적입니다.$ cd [프로젝트명]
이미 터미널 상에서는 현재 폴더 위치로 위치해 있는 상태이기 때문에 위 명령어를 입력하면 바로 이번에 생성된 폴더로 경로를 변경합니다.
라우팅 기능을 추가하기 위해, 많이 사용되고 있는 react-router-dom
을 설치합니다.
$ npm install react-router-dom
![[Pasted image 20230902095733.png]]
$ npm install sass
$ npm install styled-components styled-reset
Git은 파일을 기준으로 추적하기 때문에 폴더를 생성하고 빈 파일을 생성해야 Git으로 해당 파일과 폴더를 관리할 수 있습니다.
폴더 선택이 잘못되면 npm start 같은 동작들이 에러가 발생할 수 있습니다. 꼭 폴더가 제대로 열렸는지 확인합시다.
절대경로
로 접근합니다.// ProductDetail.js
import React from 'react';
const ProductDetail = () => {
return <img src="/images/PruductDetail/product1.jpg" alt="프로덕트1" />;
};
export default ProductDetail;
PascalCase
로 작성하고, 간접적인 관계의 폴더라면 camelCase
로 표기합니다.절대경로
혹은 상대경로
로 사용할 필요가 있습니다.css 파일에서
절대경로
는 src를 의미합니다.
//Bad
.feedImage {
background-image: url('/images/heart.jpg');
}
//Good
.feedImage {
background-image: url('../../assets/images/heart.jpg');
}
.feedImage {
background-image: url('/assets/images/heart.jpg');
}
// src/Router.js
import React from 'react';
import { BrowserRouter, Routes, Route } from 'react-router-dom';
import Login from './pages/Login/Login';
import Main from './pages/Main/Main';
const Router = () => {
return (
<BrowserRouter>
<Routes>
<Route path="/" element={<Login />} />
<Route path="/main" element={<Main />} />
</Routes>
</BrowserRouter>
);
};
export default Router;
- 프로젝트를 새로 만들어서 작성할 때 retrun 은
{ }
가 아닌()
입니다.
만약 return 구간을{}
로 작성할 시에는 <> 태그가 먹질 않으니 만약 태그를 인식못하 는 에러가 발생 헀을 때는 return이 소괄호로 잘 묶였는지 확인합시다.- export default Router; 는 꼭 해줘야 합니다.
위의 저 코드를 안짜면 다른 곳에서 import를 할 수가 없습니다.
Router
로 설정합니다..selintcache
파일을 생성하고 업데이트 합니다.if(IsEmpty) return Null
InEmpty = Boolean(Array.length); == 변수의 추상화 Early Return