inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

9.2 useReducer 체크박스 관련질문입니다.

해결됨

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

문제상황: 수정을 위해 체크박스를 체크해도 아무 변화도 생기지 않는 상황 reducer 내용 const reducer = (state, action) => { switch(action.type){ case 'CREATE': return [action.data,...state]; case 'UPDATE': return state.map((item) => { console.log(action, item.id, item.isDone) return item.id === action.targetId ? {...item, isDone: !item.isDone} : item }) case 'DELETE': return state.filter((item) => item.targetId !== action.targetId) default: state } } const onUpdate = (targetId) => { dispatch({ type:"UPDATE", targetId }) } 예상 문제: console.log(action.targetId, item.id, item.isDone)을 해본결과 action.targetId가 내가 원하는 id값만 가져오는것이 아닌 저렇게 객체 전체를 가져오기 때문에 action.targetId와 item.id가 일치하지 않아 체크가 되지않는 현상인것 같습니다. 어디를 보면 좋을지 및 무엇을 수정해야하는지 알려주시면 감사하겠습니다.

  • javascript
  • react
  • node.js
양진영 댓글 1 좋아요 0 조회수 128

멀티 스레드 트랜잭션

미해결

스프링 DB 2편 - 데이터 접근 활용 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요 영한님 강의를 보고 사이드 프로젝트를 하며 성장 하고 있습니다. 관련된 내용을 찾아 보다가 인사이트를 얻기 어려워 조언을 얻고자 질문을 남깁니다. 테스트에 트랜잭션이 걸려있고, ExecutorService submit을 통해 단순히 데이터를 저장 할때 PessimisticLockingFailureException 예외가 발생 합니다. 테스트 트랜잭션이 락을 가지고 있고 커밋 되지 않아서 문제가 발생 한다고 하는데 멀티 스레드는 트랜잭션 전파와 연관이 없기 때문에 별도의 물리 트랜잭션이라고 생각 하고 있습니다. 하지만 왜 이런 예외가 발생 하는지 모르겠습니다 ㅠㅠ 힌트라도 알려 주시면 감사합니다 @Transactional @DisplayName("멀티 스레드에서 모임을 저장 한다.") @Test void saveEventWhenMultiThread() throws InterruptedException { //given ExecutorService executorService = Executors.newFixedThreadPool(2); int taskCount = 3; CountDownLatch countDownLatch = new CountDownLatch(taskCount); //when //then for(int i = 0; i < taskCount; i++) { int testNum = i; executorService.execute(() -> { try { eventRepository.save(createEvent("멀티 테스트" + testNum , "테스트 모임", 30)); } finally { countDownLatch.countDown(); } }); } countDownLatch.await(); executorService.shutdown(); } Exception in thread "pool-2-thread-2" Exception in thread "pool-2-thread-1" org.springframework.dao.PessimisticLockingFailureException:

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
조희제 댓글 1 좋아요 0 조회수 100

6강 내용 질문

미해결

프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)

1개의 콘솔 내용을 입력 했는데 실행값이 나오지 않습니다 Extensions에서 Micorsoft 인증 된 걸 다운로드 한 다음 콘솔 내용 입력 후 Enter 대신 Ctrl+F5 눌렀는데 화면 처럼 실행 되는데 제가 설정을 잘못 한 걸 까요?

  • python
dkdkfkrmfk 댓글 2 좋아요 0 조회수 81

index.html 화면 오류

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 문제: 강의를 진행하다가 index.html의 코드를 바꾸고 서버를 재시작해도 적용이 안되는 현상이 발생 발생 오류: 발생한 오류 코드는 o.apache.coyote.http11.Http11Processor : Error parsing HTTP request header 등등 해결 방법: 크롬 브라우저의 인터넷 사용 기록 삭제후 해결

  • spring
  • mvc
수뭉제 댓글 1 좋아요 0 조회수 170

공통 인풋 컴포넌트 구현하기에서 variant가 계속 빨간색 오류뜨는데요;

해결됨

아바타 커뮤니티앱 만들기 (React Native Expo)

import React from 'react'; import { colors } from "@/constants"; import {StyleSheet, TextInput, View,Text, TextInputProps} from 'react-native'; interface InputFieldProps extends TextInputProps{ label?:string; variant?: "filled" | "standard" | "outlined"; } function InputField({label, variant = "filled", ...props }: InputFieldProps) { return ( <View> {label && <Text style={styles.label}>{label}</Text>} <View style={[styles.container, styles[variant]]}> <TextInput style={styles.input} {...props} /> </View> </View> ); } const styles = StyleSheet.create({ container:{ height:44, borderRadius:8, paddingHorizontal:10, justifyContent:"center", alignItems:"center", }, label:{ fontSize:12, color: colors.GRAY_700, marginBottom:5, }, filled:{ backgroundColor: colors.GRAY_100, }, standard: {}, outline: {}, input: { fontSize:16, padding: 0, flex:1, }, }); export default InputField; 도와주세요,,선생님 ㅠㅠ

  • javascript
  • react
  • react-native
  • typescript
  • react-query
ksw 댓글 1 좋아요 0 조회수 153

supabse 연결 불가

미해결

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

npx prisma db push 명령어 실행시, 아래와 같은 오류가 발생합니다. Error: P1001: Can't reach database server at aws-0-ap-northeast-2.pooler.supabase.com :`5432` .env 파일 루트 경로에 생성 DATABASE_URL, DIRECT_URL 오타 없이 알맞게 입력 위의 두 조건 모두 만족하고 있는데, 왜 이런 오류가 발생하는 걸까요? 추가로,가이드에 따라 supabase에서 생성한 db가 현재 활성화 상태이거나 running상태인지 어떻게 알 수 있을까요?

  • react
  • typescript
  • next.js
gui1008 댓글 2 좋아요 0 조회수 874

만약 비동기 작업이 완료되었을 때는 넘겨주는 콜백 함수가 없다면 어떻게 되나요?

해결됨

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

제가 이해한 내용이 맞는지 궁금하여 질문드립니다! 콜백 함수 없이 비동기 작업을 Web APIs에게 넘겨준다면 비동기 작업이 처리되고 넘겨줄 콜백 함수가 없으므로 아무일도 일어나지 않는다. 개발자가 자바스크립트에서 비동기적으로 어떠한 코드를 처리하기 위한 목적으로 비동기 코드와 콜백 함수를 같이 작성한다. 라고 생각해도 될까요?

  • javascript
  • react
  • node.js
훗추추 댓글 1 좋아요 0 조회수 130

React Hooks 만들때는 첫 번째 파일명을 대문자로 안해도되나요?

해결됨

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

안녕하세요! 질문있습니다. (강의 구간: 10:43초) 강사님께서 평소 컴포넌트 파일들을 만들때 파일명 첫 번째에는 항상 대문자로 적으셨는데 hooks를 만들때는 첫 번째 글자를 소문자로 적어주셨는데 hooks만들때는 첫 번째 글자를 소문자로 적는건가요?

  • javascript
  • react
  • node.js
모카 댓글 2 좋아요 0 조회수 283

AOP 활용에 대하여 질문 드립니다.

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요. AOP는 핵심 로직이 아닌 부가적인 로직을 처리할 때 주로 사용한다고 알고있습니다. 보통 많이 사용하는 경우는 로그추적, 트랜잭션 등이 있다고 하셨는데 권한을 체크할 때도 사용할 수 있나요? 만약 사용자들은 방을 생성해서 그 방안의 참여자들만 글을 쓸 수 있을 때, 이 유저가 참여자인지 확인하는 로직이 필요하다면 이 로직을 AOP를 활용하여 작성해도 되는지 궁금합니다. 여러 메서드들에서 사용하기 때문에 공통 관심사라는 생각이 들긴 합니다. 직접 서비스단에서 매번 확인하면 중복 코드가 발생할 것 같아서 AOP를 활용하고 싶은데 이런 경우도 사용이 가능한지 궁금해 질문남깁니다. 감사합니다!

  • java
  • spring
  • mvc
  • spring-boot
jjin 댓글 1 좋아요 0 조회수 75

server 쪽에서 should be a number of seconds or string representing a timespan 에러가 발생합니다

해결됨

아바타 커뮤니티앱 만들기 (React Native Expo)

Window, node 22 버전 사용중입니다. 4-5 로그인 연동하기에서 회원가입까진 연동이 되는데 로그인 api 요청시 500에러가 발생합니다. [Nest] 22548 - 2025. 02. 15. 오후 10:00:50 ERROR [ExceptionsHandler] "expiresIn" should be a number of seconds or string representing a timespan Error: "expiresIn" should be a number of seconds or string representing a timespan at D:\project\community\server\node_modules\jsonwebtoken\sign.js:56:15 at Array.forEach (<anonymous>) at validate (D:\project\community\server\node_modules\jsonwebtoken\sign.js:47:6) at validateOptions (D:\project\community\server\node_modules\jsonwebtoken\sign.js:62:10) at module.exports [as sign] (D:\project\community\server\node_modules\jsonwebtoken\sign.js:171:5) at D:\project\community\server\node_modules\@nestjs\jwt\dist\jwt.service.js:56:17 [Nest] 22548 - 2025. 02. 15. 오후 10:00:50 LOG [HTTP] [POST] /auth/signin (500) (okhttp/4.12.0) //axios.ts import axios from "axios"; import {Platform} from "react-native"; const baseUrls = { ios: 'http://localhost:3030', android: 'http://10.0.2.2:3030' } const axiosInstance = axios.create({ baseURL: baseUrls[Platform.OS] ?? 'http://localhost:3030' }); export default axiosInstance //auth.ts import {getSecureStore} from "@/utils/secureStore"; import axios from "@/api/axios"; import {Profile} from "@/types"; interface RequestUser { email: string; password: string } async function postSignup(body: RequestUser): Promise<void> { const {data} = await axios.post('/auth/signup', body); return data; } async function postLogin(body: RequestUser): Promise<{ accessToken: string }> { const {data} = await axios.post('/auth/signin', body); return data; } //useAuth.ts function useLogin() { return useMutation({ mutationFn: postLogin, onSuccess: async ({accessToken}) => { setHeader('Authorization', accessToken) await saveSecureStore('accessToken', accessToken); queryClient.fetchQuery({queryKey: ['auth', 'getMe']}); router.replace('/') }, onError: () => { }, }) } postLogin 에서 엔드포인트만 /auth/signup로 바꾸면 회원가입은 정상적으로 요청이 됩니다.

  • javascript
  • react
  • react-native
  • typescript
  • react-query
ljy014 댓글 2 좋아요 0 조회수 134

프로젝트 실행 오류

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 영상보며 차근차근 따라하는데 스프링부트 프로젝트만들고 build.gradle 오픈하니 사진과 같이 에러가 뜹니다. 질문전 다른 분들의 같은 문제를 보았는데 저는 제 어떤 부분이 문제인지 잘모르겠습니다ㅠ..환경변수하고 체크해봤는데 제 눈에는 문제를 잘모르겠어요. 혹시나해서 오류 및 프로젝트 설정, 환경 변수등의 사진들을 올려봅니다. <오류> <Project Structure - Project> 위 사진에서 처음에는 <No SDK>로 설정되어있어서 이것문제인가 싶어 open-jdk로 변경했지만 그대로더군요ㅠ <Project Structure - SDKs> <스프링부트 프로젝트 설정> <환경변수 설정> 이상입니다. 도움좀 주세요ㅠ 스프링 공부하고싶어여

  • java
  • spring
  • mvc
  • spring-boot
yoon6669 댓글 2 좋아요 0 조회수 534

npx tailwindcss init 가 안되네요.

해결됨

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

강의대로 npx tailwindcss init 을 하게되면 'tailwind'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 라고 뜨네요. 어떻게 해결 방법이 없을까요? vscode 재시작해봐도 똑같네요. 구글링 해보니, 환경변수에 nodejs 경로를 path에 추가하라고 하는데, 이미 추가되어있구요. 아, node버전이 기존에 18버전이 설치되어 있어서 그건 새로 설치하지는 않았습니다.

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
속터져 댓글 1 좋아요 0 조회수 4974

npm install --save @tinymce/tinymce-react 오류 입니다.

해결됨

React, Node.js, MongoDB로 만드는 나만의 회사 웹사이트: 완벽 가이드

리액트 버젼이 19.0 이상이라서 안된다고하는데 리액트를 다운그레이드해야하나요??...리액트를 다운그래이드 안하고 사용하는 방법은 없을까요?

  • HTML/CSS
  • javascript
  • react
  • node.js
  • mongodb
신상 댓글 2 좋아요 0 조회수 288

React 팀 프로젝트 (로그인 검증 기능)

미해결

Supabase의 DB로 로그인 검증 기능을 만들려고 해요 그런데 로그인 검증을 하기 위해서 예외처리를 테스트 하는데 error 400 (Bad request) 가 발생 합니다. 데이터 값이 있으면 로그인은 됩니다. 하지만 존재 하지 않는 값의 예외처리를 할려 하는데 무조건 error 400 (Bad request) 가 나타나내요 이 문제를 해결해 줄 수 있는분 답변 부탁 드립니다. const handleLogin = async (e) => { e.preventDefault(); if (!email || !password) { alert('이메일과 비밀번호를 입력해주세요.'); return; } // 이메일 형식 확인 (정규식 사용) const emailPattern = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; if (!emailPattern.test(email)) { alert('올바른 이메일 형식을 입력해주세요.'); return; } if (password.length < 6) { alert('비밀번호는 최소 6자 이상이어야 합니다.'); return; } try { const { data, error } = await supabase.auth.signInWithPassword({ email, password, }); if (error) { alert('이메일 또는 비밀번호가 잘못되었습니다.'); return; } if (data?.user) { alert('로그인이 완료되었습니다.'); navigate('/'); } else { alert('회원 정보가 존재하지 않습니다.'); } } catch (err) { console.error('오류 발생:', err); alert('오류가 발생했습니다. 잠시 후 다시 시도해주세요.'); } };

  • react
  • supabase
  • vscode
이록기 댓글 1 좋아요 0 조회수 95

마이크로 프론트엔드는 레포가 여러개일까요?

미해결

Next + React Query로 SNS 서비스 만들기

안녕하세요! 강의 잘 듣고 있습니다! 강의 도중 마이크로 프론트엔드에 대해 여쭤볼게 있어 질문 드립니다! 다름이아니라, 3개의 Next 앱을 같은 도메인 아래 뒤에 주소들로만 구분해서 하나로 묶는 마이크로 프론트엔드는 그렇다면 결국 레포지토리가 3개인가요??

  • react
  • next.js
  • react-query
  • next-auth
  • msw
amh6281 댓글 1 좋아요 0 조회수 125

@ModelAttribute 와 Model model 방식의 차이가 궁금합니다.

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] @GetMapping("/login") public String login(@ModelAttribute("login") LoginDto loginDto) { return "login/login"; } @PostMapping("/login") public String loginForm(@Validated @ModelAttribute("login") LoginDto loginDto, BindingResult bindingResult, HttpServletRequest request) { if (bindingResult.hasErrors()) { return "login/login"; } 이렇게 작성하였을 때는 유효성 검사에 실패하면 제대로 처리가 되는데, @GetMapping("/login") public String login(Model model) { model.addAttribute("login", new LoginDto()); return "login/login"; } 이런 식으로 변경하면 Caused by: java.lang.IllegalStateException: Neither BindingResult nor plain target object for bean name 'login' available as request attribute 이런 식으로 오류가 나게 됩니다. 동작 방식에서 어떤 차이가 있는 것인지 궁금하여 질문 남깁니다.

  • spring
  • mvc
Aeng 댓글 1 좋아요 0 조회수 106

C언어 기출문제의 변형 23:00문제 질문할게요

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

*ptr++의 경우에는 arr의 값도 증가 시키고 포인터 위치도 변경시키는거고, ++*ptr 일경우에는 바라보고 있는 포인터위치는 변하지 않고 arr의 값만 증가 시키고 끝나는건가요? 제가 지금 이해하고 있는건 *ptr 의 앞에 "++"이 붙으면 값만 선증가시키고, "++"이 뒤에 붙이면 값을 후증가시키고 메모리값도 증가시킨다. 인데 이게 맞나요?

  • python
  • java
  • c
  • 정보처리기사
김영선 댓글 2 좋아요 0 조회수 166

outlet을 이용한 서브메뉴 강의에서 질문있습니다.

미해결

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

outlet을 이용한 서브메뉴에서 질문있습니다. main <-이 부분이 부모페이지고 list add <-서브페이지면 list page component<-자손페이지 인가요? 강의에서 IndexPage.js에서 <Outlet/> 부분에 ListPage.js 코드가 들어가 있는 형태인거 같은데요. 근데 제가 아래처럼 작동해봤을 떄 Todo List Page Component 이 부분이 안나오는데요. 코드 어디가 문제인가요? 코드 복붙했는데요. 아래는 IndexPage.js 코드입니다. import { Outlet } from "react-router-dom"; import BasicLayout from "../../layouts/BasicLayout"; const IndexPage = () => { return ( <BasicLayout> <div className="w-full flex m-2 p-2 "> <div className="text-xl m-1 p-2 w-20 font-extrabold text-center underline">LIST</div> <div className="text-xl m-1 p-2 w-20 font-extrabold text-center underline">ADD</div> </div> <div className="flex flex-wrap w-full"> <Outlet/> </div> </BasicLayout> ); } export default IndexPage; 아래는 ListPage.js 코드입니다. import React from 'react' export default function ListPage() { return ( <div className="p-4 w-full bg-orange-200 "> <div className="text-3xl font-extrabold"> Todo List Page Component </div> </div> ) }

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
zzzzz 댓글 1 좋아요 0 조회수 103

인기 태그

인프런 TOP Writers

주간 인기글