Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 알고리즘
- NPM
- CSS
- 최적화
- C++
- javascript
- HTML
- 리액트
- Android
- firebase
- k for k
- 스택
- 코딩테스트
- 타입스크립트
- JS
- 백준 스택
- react
- next Link
- 파이어베이스
- Python
- nodejs
- typescript
- 파이썬
- stdin vs input
- 안드로이드
- 자바스크립트
- 백준 스택 시간초과 python
- TS
- 프론트엔드
- kotlin
Archives
- Today
- Total
sooleeandtomas
!주의! React dev tools 라이브 서버에 보여지면 클나요 본문
React dev tools는 개발자들이 리덕스 스토어를 디버깅할 때 유용하게 쓸 수 있는 chrome에 설치할 수 있는 extension입니다.
이 툴에 미들웨어가 동작하는 방식들을 일일히 로그처럼 볼 수 있습니다.
이 툴은 개발 모드에서는 문제없지만, 실제 라이브되는 모드에서 보여진다면 클납니다.
user info에는 card, item 배송지 정보 등등이 있을 텐데, 그런 것들이 라이브 서버에 보여지면 문제가 될 수 있는 여지가 분명히 있을 겁니다!
그래서 아래와 같이 store에 미들웨어를 적용하는 부분에 'development' 이거나 'stage'(스테이지 환경을 사용할 경우) 에서만
devtools를 적용한 미들웨어를 넣어주면 됩니다.
// ...이상 생략
import 'composeWithDevTools' from 'redux-devtools-extension'
// devtool 익스텐션을 사용하게 해주는 툴입니다.
// ...이상 리덕스 관련 config 등 생략
const enhancer =
process.env.NODE_ENV === "development"
|| process.env.NODE_ENV === 'stage'
|| typeof window !== undefined
? [composeWithDevTools(applyMiddleware(...middlewares))]
: [applyMiddleware(...middlewares)]
// 1. window 타입이 undefined인 경우는 브라우저가 아닌 노드 환경 일경우 입니다.
// 2. 조건(개발환경)이 맞다면 devtools있이 미들웨러를 적용해줍니다.
// 3. 조건(개발환경)이 아니라면 devtools을 없이 미들웨어를 적용해줍니다.
// enhancer은 배열로 넣어줄 수 있습니다.
const store = createStore(rootReducer, [...enhancer]);
'코딩 공부 노트 > React' 카테고리의 다른 글
React Query 공식 문서 (1) Basic - example (0) | 2022.09.30 |
---|---|
React Query와 상태관리 (우아한 테크) (0) | 2022.07.01 |
saga flow (0) | 2021.06.18 |
리액트 검색엔진 최적화 하는 법 meta - tag, memo (0) | 2021.05.19 |
댓글 사용하기, 댓글 알람주기 feat. firebase realtime DB (0) | 2021.05.14 |
Comments