Vite 환경변수 설정
가장 흔하게 리액트앱을 만드는 CRA (create-react-app)의 경우 .env 파일에 REACT_APP_을 prefix로 써야 리액트 앱이 인식할 수 있다. 그리고 앱에서 process.env.으로 접근하여 사용할 수 있었다.
Vite는 따로 dotenv 패키지를 설치해주지 않아도 되고, 공식 문서에 따르면 파일 prefix를 VITE_로 적어줘야 한다고 한다.
그리고 앱에서 import.meata.env.로 접근할 수 있다.
https://vitejs.dev/guide/env-and-mode.html
프로젝트 development, production 설정하기
msw 사용하기
backend api 배포가 되기 전에 개발하기 위해서 mock api를 설계해보자
// devdependency에 msw 추가
$ npm i -D msw
// public 디렉토리에 서비스 워커 코드 세팅하기
$ npx msw init public/ --save
// src/mocks/worker.js
import { setupWorker } from 'msw';
import { handlers } from './handlers';
export const worker = setupWorker(...handlers);
// /src/mocks/handlers.js
import { rest } from 'msw';
const todos = ['먹기', '자기', '놀기'];
export const handlers = [
// 할일 목록
rest.get('/todos', (req, res, ctx) => res(ctx.status(200), ctx.json(todos))),
// 할일 추가
rest.post('/todos', (req, res, ctx) => {
todos.push(req.body);
return res(ctx.status(201));
}),
];
function Home() {
axios.get('/todos').then((res) => {
console.log(res.data);
});
return <MainPageTemplate>Home</MainPageTemplate>;
}
eslint devdependency 제한 규칙 (msw)
'import/no-extraneous-dependencies': [
'error',
{ devDependencies: ['**/mocks/*'},
], // mock server devdependency 사용 제한 규칙 해제
msw를 사용할 mocks 디렉토리만 devDependency 사용 제한 규칙을 해제했다
API mocking
https://blog.mathpresso.com/msw%EB%A1%9C-api-%EB%AA%A8%ED%82%B9%ED%95%98%EA%B8%B0-2d8a803c3d5c
Axios 설계하기
https://pinokio0702.tistory.com/373
instance
https://yamoo9.github.io/axios/guide/config-defaults.html
interceptors
https://yamoo9.github.io/axios/guide/interceptors.html
Alert
https://sweetalert2.github.io/
https://mui.com/material-ui/react-alert/
'개발일기' 카테고리의 다른 글
[TIL] 불편함을 못느꼈다면 그건 너무 잘 만든 것 (1) | 2022.12.27 |
---|---|
[TIL] 씁쓸한 마무리 (0) | 2022.12.22 |
[TIL] 준비 땅 (1) | 2022.12.17 |
[TIL] 이걸 몰라서 기획을 (0) | 2022.12.16 |
[TIL] 안되면 되게하라 (0) | 2022.12.15 |