inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

Context 분리하기 중에서 memoizedDispatch에 useMemo를 사용하는 이유가 궁금합니다.

해결됨

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

안녕하세요. 리액트 초보입니다. 이해하기 쉽게 설명해주셔서 감사합니다. 11.3) Context 분리하기 강의 약 7분 쯤에서 궁금한 부분이 있어서 질문 남깁니다. <TodoDispatchContext.Provider> 를 통해 context를 전달할 때, 함수를 캐싱하기 위해 강의에서는 아래와 같이 useMemo를 사용해주셨는데요! const memoizedDispatch = useMemo(() => { return { onCreate, onUpdate, onDelete }; }, []); 우선 최적화하고자 한 이유는 아래와 같다고 이해했습니다. onCreate, onUpdate, onDelete 모두 한 번 생성한 후에 바뀌지 않는 함수로, TodoDispatchContext를 참조하는 자식 컴포넌트들의 리렌더링 방지 그리고 useMemo를 사용하신 부분에서는 마운트 후 onCreate, onUpdate, onDelete는 변하지 않는 함수 이므로 "값을 캐싱한다"는 의미에서 useMemo를 사용해주셨다고 이해했습니다. 다만 useCallback도 mount 후 deps 변경 전에는 함수의 중복 생성을 방지한다는 점에서는 useCallback을 사용해도 좋을 것 같단 생각이 들었는데요, 결론적으로 제가 궁금한 부분은 아래와 같습니다. useMemo 대신 useCallback을 사용해서도 동일하게 최적화 할 수 있다고 이해했는데, 제가 이해한 게 맞을까요? 1번이 맞다면 강의에서 useMemo를 사용해주신 이유는 캐싱하기 위함(의도)을 표현하기 위함이라고 이해하면 될지도 궁금합니다! 실무에서는 useMemo와 useCallback을 모두 사용할 수 있는 경우 어떤 훅을 선택하시는지, 강의에서 useMemo를 통해 캐싱하신 이유가 궁금했습니다 ! 블로그를 찾아봐도 잘 이해가 되지 않아서 질문으로 남깁니다! 답변 주시면 감사하겠습니다!

  • javascript
  • react
  • node.js
slothbear.hj 댓글 2 좋아요 0 조회수 232

6분23초 MainPage 코드와 자료 코드 불일치 관련 문

해결됨

코드로 배우는 React 19 with 스프링부트 API서버

안녕하세요, 강사님. React Router 설정 강의 중 6분 23초에 사용하신 MainPage 코드와 강의 자료에 제공된 MainPage 코드의 작성 방식이 서로 달라서 문의드립니다. 영상에서는 함수 선언식( function MainPage … )을, 자료에서는 화살표 함수( const MainPage = … ) 형태로 소개되어 다소 혼란이 있습니다. 혹시 두 방식 중 특별히 권장하시는 것이 있는지 , 아니면 단순히 문법 스타일 차이인지 알고 싶습니다 . 또한, React나 Spring Boot의 버전 차이 에 따라 코드 작성 방식이 달라지는 부분이 있는지도 궁금합니다. 앞으로는 강의 영상 기준의 코드 를 우선 따라 작성해도 괜찮을지 안내해 주시면 감사하겠습니다. 바쁘신 와중에 읽어주셔서 감사합니다. 답변 기다리겠습니다. 감사합니다.

  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
  • react
김지수 댓글 2 좋아요 0 조회수 148

handler.reject(err) 질문

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

안녕하세요 강사님. 강의 잘 듣고 있습니다. handler.reject(err)를 발생시키는 경우가 총 3가지인 것 같은데요. 1번째는 secureStorage에 refreshToken이 없을 때, 2번째는 dio 요청 실패했을 때 즉 서버의 refresh 토큰의 기간이 만료되었을 때, 3번째는 토큰과 관계없는 서버의 예외 상황이 발생했을 때인 것 같은데요. 2번째 상황에서는 login 화면으로 다시 redirect 시키지만, 1, 3번째의 경우에는 따로 예외 스크린을 만들어서 여기로 라우팅시키는 것이 적합할까요? 만약 이렇게 처리하지 않는다면, 레드 스크린에 예외 로그가 남게 되는 것인가요? 또한 handler.reject(err)를 통해 예외가 전파되는 것 같은데, 2번째 상황에서는 어차피 로그인 화면으로 바로 넘어가므로 이를 굳이 발생시킬 필요는 없지 않나요?

  • flutter
  • 하이브리드-앱
helloworld 댓글 2 좋아요 0 조회수 119

작업형1 모의문제1 문제1

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

<앞에서부터 70% 데이터 중 views 컬럼의 3사분위 수에서 1사분위 수를 뺀 값을 구하시오> 이 문제 해결할 때, int앞에 : 은 왜 넣는건가요? df = df[:int(len(df) * 0.7)]

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
ssjmj0404 댓글 2 좋아요 0 조회수 58

5.동전분배하기 문제 밑에코드도 정답이될까요?

미해결

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

n = int(input()) c = [] for _ in range(n): b = int(input()) c.append(b) def DFS(L,first,second,third): global best a = max(first,second,third) - min(first,second,third) if a >= best: return if L == n: if a < best: best = a else: for i in range(n): if ch[i] == 0: ch[i] = 1 DFS(L+1,first+c[i],second,third) DFS(L+1,first,second+c[i],third) DFS(L+1,first,second,third+c[i]) ch[i] = 0 ch = [0] * n best = 10000000000000 DFS(0,0,0,0) print(best)

  • python
  • 코딩-테스트
yswo2100 댓글 1 좋아요 0 조회수 134

1090번 문제 질문

미해결

2주만에 통과하는 알고리즘 코딩테스트 (2024년)

문제에 대한 정리가 필요해 질문 남깁니다. 결국 문제는 1명, 2명, 3명 이렇게 차례대로 모였을 때 1명 모이면 이동거리 최소 이동 거리 합 : n1 2명 모이면 이동거리 최소 이동 거리 합 : n2 n명 모이면 이동거리 최소 이동 거리 합 : nn 이런 최소값을 원하는 문제인거죠? 그래서 1번 아이디어로 구현 했을 경우에는 모든 좌표에 대해서 1명 모일 때 , 2명 모일 때 반복하면서 모든 경우의 수를 찾아가는 가는 방법이고 2번 아이디어의 경우는 모든 좌표를 볼 필요 없이 각각의 집 좌표만 보면 된다라는 생각을 해서 각각의 집 좌표로 비교해서 경우의 수를 찾는 방법이고 3번 아이디어는 각각의 집 좌표들을 모두 비교할 필요 없이 정렬 후 인원의 수 만큼 돌면서 작은 값이면 바꿔준다 방법이고 이런 느낌으로 접근을 한게 맞는 걸까요?

  • python
  • 코딩-테스트
  • 알고리즘
ybs1121 댓글 1 좋아요 0 조회수 171

AWS 배포 후 사이트 접속이 원할하지 않은 문제

해결됨

(2025) MBTI 테스트 기반 수익형 웹사이트 만들기 - <코딩 배워 사업하자>

선생님! 안녕하세요! 제가 AWS에 배포 후 도메인을 붙이고 접속했을 때 첫 페이지는 잘 나왔습니다. 근데 테스트를 클릭하니 URL이 도메인 주소가 아닌 localhost로 바뀌면서 접속이 안됩니다. 어느 포인트를 수정해야할까요?ㅠ

  • react
  • aws
  • Google-Analytics
  • cloudflare
  • adsense
  • 수익화
asd 댓글 1 좋아요 0 조회수 144

삭제기능 구현부분에 대해 질문있습니다.

미해결

React 완벽 마스터: 기초 개념부터 린캔버스 프로젝트까지

안녕하세요 삭제기능 구현 강의를 보다가 조금 어려운 부분이 있어 질문을 드립니다. canvas.js 파일에서 getCanvases함수와 createCanvas함수는 canvases.get, canvases.post앞에 return이 붙었고 이건 다른 곳에서 사용할 수 있다라고 알고 있습니다. 그럼 deleteCanvas는 왜 똑같이 return을 사용하지 않고 async await을 사용했는지 궁금하고 왜 위에 두 함수는 return을 사용했는지도 궁금합니다.

  • react
  • React-Context
  • react-router
  • tailwindcss
  • react-query
부드러운 족제비 댓글 2 좋아요 0 조회수 84

도표 강의 자료 열람 불가능

미해결

따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]

안녕하세요 강의 잘 듣고 있습니다 도표강의자료 들어가면 파일을 찾지 못했다고 오류가 나옵니다

  • react
  • redux
  • node.js
  • 웹앱
  • mongodb
sheepjune 댓글 1 좋아요 0 조회수 144

VS코드에러

해결됨

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

VS코드에서 에러는 뜨는데 실행은 됩니다. 강의VS코드에서는 에러 안뜨던데 왜 제꺼에서만 에러가 뜰까요?

  • javascript
  • react
  • node.js
H Hun 댓글 1 좋아요 0 조회수 119

<> </> 의미

해결됨

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

여기서 에러떠서 리턴문 안에<> </> 추가했더니 해결됬어요 <> </> 의미가 뭐죠?

  • javascript
  • react
H Hun 댓글 3 좋아요 0 조회수 118

tailwind css 오류

미해결

코드로 배우는 React 19 with 스프링부트 API서버

postcss.config.js는 설정할 필요 없나요?

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
이상영 댓글 2 좋아요 0 조회수 119

작업형1 모의문제3 문제9

미해결

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

작업형1 모의문제3 문제9관련 질문입니다. 해설을 보고 코드를 작성했는데, 결과값이 11이 아니라 np.int32(11)로 나옵니다. 무엇이 잘못되었을까요? 문제9 구독(subscribed) 월별로 데이터 개수를 구한 뒤 가장 작은 구독 수가 있는 월을 구하시오 # your code import pandas as pd df = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/main/p1/members.csv") df['subscribed']=pd.to_datetime(df['subscribed']) df['year']= df['subscribed'].dt.year df['month']= df['subscribed'].dt.month df['day'] =df['subscribed'].dt.day df= df.groupby('month').count() df.sort_values('subscribed').index[0] =>np.int32(11)

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
신수아 댓글 2 좋아요 0 조회수 106

tailwind css 오류

미해결

코드로 배우는 React 19 with 스프링부트 API서버

'tailwind'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 떠서 수동으로 tailwind.config.js 파일 추가하고 index.css랑 기타 설정하고 실행했더니 ERROR in ./src/App.css (./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[5].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[5].use[2]!./node_modules/source-map-loader/dist/cjs.js!./src/App.css) Module build failed (from ./node_modules/postcss-loader/dist/cjs.js): Error: It looks like you're trying to use tailwindcss directly as a PostCSS plugin. The PostCSS plugin has moved to a separate package, so to continue using Tailwind CSS with PostCSS you'll need to install @tailwindcss/postcss and update your PostCSS configuration. at Le (C:\react\react_springboot\node_modules\tailwindcss\dist\lib.js:36:1984) at LazyResult.runOnRoot (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:361:16) at LazyResult.runAsync (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:290:26) at LazyResult.async (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:192:30) at LazyResult.then (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:436:17) ERROR in ./src/index.css (./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[5].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[5].use[2]!./node_modules/source-map-loader/dist/cjs.js!./src/index.css) Module build failed (from ./node_modules/postcss-loader/dist/cjs.js): Error: It looks like you're trying to use tailwindcss directly as a PostCSS plugin. The PostCSS plugin has moved to a separate package, so to continue using Tailwind CSS with PostCSS you'll need to install @tailwindcss/postcss and update your PostCSS configuration. at Le (C:\react\react_springboot\node_modules\tailwindcss\dist\lib.js:36:1984) at LazyResult.runOnRoot (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:361:16) at LazyResult.runAsync (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:290:26) at LazyResult.async (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:192:30) at LazyResult.then (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:436:17) 위 오류가 뜨네요 ㅜ

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
이상영 댓글 1 좋아요 0 조회수 623

캔버스 프로젝트에서 파일명에 대해 질문있습니다.

미해결

React 완벽 마스터: 기초 개념부터 린캔버스 프로젝트까지

안녕하세요 현재 캔버스 프로젝트 부분을 공부중입니다. 공부를 하면서 파일에 대해 궁금한점이 생겼는데 컴포넌트에는 뒤에 .jsx를 작성했는데 api폴더에서 canvas와 http 파일에는 .js가 붙은 이유가 뭔지 궁금합니다.

  • react
  • React-Context
  • react-router
  • tailwindcss
  • react-query
부드러운 족제비 댓글 1 좋아요 0 조회수 101

vitest 설치했는데

미해결

실무에 바로 적용하는 프런트엔드 테스트 - 1부. 테스트 기초: 단위・통합 테스트

이렇게 발견된 테스트가 없다면서 8:39 화면처럼 테스트확장에 리스트가 출력되지않습니다.. 브랜치받고 npm ci 까지 한 상태입니다. 커서 ide 참고로 0.2.42 버전 없어서 제일낮은 0.3 버전사용해도 못찾습니다 .. Vitest v0.33.0 is not supported. Vitest v1.4.0 or newer is required. 이렇게 출려되는데 버전을 올릴까요 ?

  • javascript
  • react
  • 소프트웨어-테스트
  • vitest
댓글 2 좋아요 0 조회수 235

함수 정의 위치

해결됨

React 완벽 마스터: 기초 개념부터 린캔버스 프로젝트까지

안녕하세요! React로 프로젝트를 진행할 때 여러 함수들(이벤트 핸들러나 로직 처리 함수 등)을 구현하게 되는데, 이런 함수들을 어느 위치에서 정의하고 관리하는 것이 좋은지 궁금합니다. 예를 들어, B 컴포넌트 안에 A 컴포넌트가 있고, A에서 어떤 이벤트 함수가 필요하다면 그 함수를 B에서 정의하고 props로 A에 전달하는 식으로 처리하는 것이 React에서 일반적인 방식인가요? 그리고 만약 그 함수가 여러 컴포넌트에서 재사용되어야 한다면, 이들 컴포넌트의 공통 상위 컴포넌트까지 올라가서 정의한 후 각 컴포넌트에 전달하는 방식이 맞는지도 궁금합니다. 혹시 더 좋은 구조나 패턴이 있다면 조언 주시면 감사하겠습니다!

  • react
  • React-Context
  • react-router
  • tailwindcss
  • react-query
Junseob Youn 댓글 1 좋아요 1 조회수 121

수강 연장 문의

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

안녕하세요. 교수님 10회 실기시험 목표로 하고 있는 수강생 입니다. 제가 5월 중순에 수강 기간이 만료인데 10회 실기시험 전까지만 연장 가능할까요?ㅠㅠ 이메일은 lbk375@naver.com 입니다.

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
이복기 댓글 2 좋아요 0 조회수 72

[감정일기장 배포하기] vercel login시 zsh: command not found: vercel 에러가 떠서 npm i -g vercel 명령어 입력했는데 또 다른 에러가 나요

해결됨

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

맥북에서 vercel login시 zsh: command not found: vercel 에러가 떠서 npm i -g vercel 명령어 입력했는데 또 다른 에러가 나요ㅠㅠ 구글링 해서 캐쉬삭제도 해보고 권한도 확인했는데 해결이 안되서 질문드립니다! 이정환 선생님 도와주세요!!

  • javascript
  • react
  • node.js
Ethan 댓글 2 좋아요 0 조회수 211

강사님의 로그와 저의 리퀘스트 메모이제이션 로그가 달라요!

미해결

한 입 크기로 잘라먹는 Next.js

넥스트 서버에서 찍히는 로그가 달라서 문의드립니다. 다만 제가 백엔드쪽에서 콘솔을 찍어보니까 넥스트 로그와는 별개로 한번씩만 호출되는걸로 보여지는데 리퀘스트 메모이제이션이 잘 동작하는게 맞는지 궁금합니다 넥스트 로그 네스트 컨트롤러 로그

  • react
  • typescript
  • next.js
baby4 댓글 3 좋아요 1 조회수 310

인기 태그

인프런 TOP Writers

주간 인기글