inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

댓글 수정 함수 바인딩이 안되는 것 같습니다.

해결됨

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

import BoardCommentWriteUI from "./boardCommentWrite.presenter"; import { ChangeEvent, useState } from "react"; import { useMutation } from "@apollo/client"; import { CREATE_BOARD_COMMENT, UPDATE_BOARD_COMMENT, } from "./boardCommentWrite.queries"; import { useRouter } from "next/router"; import { FETCH_BOARD_COMMENTS } from "../list/boardCommentList.queries"; import { IMutation, IMutationCreateBoardCommentArgs, IMutationUpdateBoardCommentArgs, } from "../../../../commons/types/generated/types"; import { IBoardCommentWriteProps } from "./boardCommentWrite.types"; export default function BoardComment(props: IBoardCommentWriteProps) { const [createBoardComment] = useMutation< Pick<IMutation, "createBoardComment">, IMutationCreateBoardCommentArgs >(CREATE_BOARD_COMMENT); const [updateBoardComment] = useMutation< Pick<IMutation, "updateBoardComment">, IMutationUpdateBoardCommentArgs >(UPDATE_BOARD_COMMENT); const [writer, setWriter] = useState(""); const [password, setPassword] = useState(""); const [comment, setComment] = useState(""); const [star, setStar] = useState(0); const router = useRouter(); const handleChangeWriter = (event: ChangeEvent<HTMLInputElement>) => { setWriter(event.target.value); }; const handleChangePassword = (event: ChangeEvent<HTMLInputElement>) => { setPassword(event.target.value); }; const handleChangeComment = (event: ChangeEvent<HTMLTextAreaElement>) => { setComment(event.target.value); }; const updateComment = () => { alert("수정하기 입니다."); }; const onClickSubmitComment = async () => { try { if (typeof router.query.boardId !== "string") { alert("시스템에 문제가 있습니다."); return; } const result = await createBoardComment({ variables: { createBoardCommentInput: { writer, password, contents: comment, rating: star, }, boardId: router.query.boardId, }, refetchQueries: [ { query: FETCH_BOARD_COMMENTS, variables: { boardId: router.query.boardId }, }, ], }); } catch (error) { if (error instanceof Error) { alert(error.message); } } setWriter(""); setComment(""); setPassword(""); setStar(0); }; return ( <BoardCommentWriteUI handleChangeWriter={handleChangeWriter} handleChangePassword={handleChangePassword} handleChangeComment={handleChangeComment} onClickSubmitComment={onClickSubmitComment} updateComment={updateComment} setStar={setStar} writer={writer} comment={comment} password={password} el={props.el} /> ); } boardCommentWriter.container.tsx 에서 updateComment 바인딩이 안된것인지 함수가 작동을 안하는 것인지 updateComment의 "수정하기 입니다. " 알림창이 안뜹니다. 수정/삭제 버튼 onClick 내부에서 해봐도 태그 바깥에서 삼항연산자를 써보아도 적용이.. 안됩니다. onClickSubmitComment 함수는 제대로 작동하는데 말이죠 ㅠㅠ 도저히 왜 안되는지 모르겠어요 import * as S from "../../board/commons/style/style"; import * as Own from "./boardCommentWrite.styles"; import { IBoardCommentWriteProps } from "./boardCommentWrite.types"; export default function BoardCommentWriteUI(props: IBoardCommentWriteProps) { console.log(props.el); return ( <S.BoardWrapper> <S.Row> <Own.Writer placeholder="작성자" onChange={props.handleChangeWriter} value={props.editComment ? props.el?.writer : props.writer} readOnly={props.editComment} /> <Own.Password placeholder="비밀번호" onChange={props.handleChangePassword} value={props.password} /> <Own.RankWrapper> <Own.RateComment value={props.editComment && props.el.rating} onChange={props.setStar} /> </Own.RankWrapper> </S.Row> <Own.Comment onChange={props.handleChangeComment} placeholder="댓글을 입력해주세요." value={props.editComment ? props.el.contents : props.comment} /> <Own.BottomComments> <S.Row> <p>0</p> <div>/</div> <p>100</p> </S.Row> {/* <Own.SubmitButton onClick={ props.editComment ? props.updateComment : props.onClickSubmitComment } > {props.editComment ? "수정하기" : "등록하기"} </Own.SubmitButton> */} {props.editComment ? ( <Own.SubmitButton onClick={props.updateComment}> 수정하기 </Own.SubmitButton> ) : ( <Own.SubmitButton onClick={props.onClickSubmitComment}> 등록하기 </Own.SubmitButton> )} </Own.BottomComments> </S.BoardWrapper> ); }

  • react
  • node.js
  • seo
  • graphql
  • next.js
홍주미 댓글 1 좋아요 0 조회수 111

레벨 블루프린트 제작 후 실행 시 메시지 로그- 맵체크 창 뜨는 경우

미해결

[입문자를 위한 UE5] Part1. 언리얼 엔진 블루프린트

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요! 레벨 블루프린트 제작 후에 실행 을 눌렀는데 메시지 로그 -맵체크가 뜨고 창을 닫으니까 레벨에 화면이 검은색으로 보입니다. 블루프린트로 print text 작성한 부분은 화면에 잘 뜨는데 레벨이 아예 검은색으로 보이는데 혹시 레벨 제작 과정에서 문제가 있었던 걸까요?

  • unreal-engine
  • ue-blueprint
보노보노 댓글 1 좋아요 0 조회수 170

싱글톤 객체 질문있습니다.

해결됨

웹소켓/STOMP 채팅서비스(spring, vue, redis)

@Bean public PasswordEncoder makePassword() { return PasswordEncoderFactories.createDelegatingPasswordEncoder(); } 이거를 싱글톤 객체로 만들어주셨는데요 그런데 String encodedPassword = passwordEncoder.encode(memberSaveReqDto.getPassword()); 이부분을 static 으로 두고 참조변수를 사용해서 사용하는 것과 어떤 차이가 있나요? 찾아보니 전역변수는 static 이니까 메모리에 미리 올라가고 싱글톤은 사용할떄 올라가는 장점이 있다고 하는데 이 예시는 어차피 클래스 초기화될 때 생성되니까 그런 장점이 없을 것 같은데... 궁금합니다.

  • spring-boot
  • websocket
  • stomp-websocket
  • pubsub
  • vue-3
열심인 참새 댓글 2 좋아요 0 조회수 152

필수 실습 문제 버블 정렬 질문

해결됨

독하게 시작하는 C 프로그래밍

강사님 안녕하세요 강의 듣고 있는 수강생입니다. 제목에 말씀드린 강의의 내용 중, '최소값을 찾아 첫번째 인덱스에 넣고 그 다음부터 해당 인덱스를 증가시켜서 다음 인덱스에 넣으면 된다.'라는 설명을 듣고 사진과 같이 코드를 구현했습니다. 그 후, 강사님의 코드와 비교를 해보았는데, 처음 for문의 시작부터 달라 gpt에 제 코드와 버블정렬에 대해 비교해달라고 했는데 제 코드는 버블정렬이 아니라는 답변을 받았습니다. 결과는 1,2,3,4,5의 오름차순으로 나오는데, 제 코드 중 어디가 잘못되었는지 알 수 있을까요 ? 감사합니다.

  • c
  • 컴퓨터-구조
  • assembly-language
  • vc++
  • 수업질문
아야어여 댓글 2 좋아요 0 조회수 250

minimum deployments ios 버전

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

14는 없고 15부터만 있는데 이건 어쩌죠?..

  • flutter
  • 클론코딩
댓글 2 좋아요 0 조회수 177

[TypeError: unsubscribe is not a function (it is undefined)] 오류 발생으로 질문드립니다.

해결됨

핸즈온 리액트 네이티브

프로젝트를 수행하는데 당장의 문제는 없는거 같아서 진행하고있었는데 계속해서 로그에 오류가 발생해서 질문드려봅니다. 로그인/로그아웃시 오류가 발생하고 있습니다 터미널에서는 (NOBRIDGE) ERROR [TypeError: unsubscribe is not a function (it is undefined)] 이런 오류로 뜨고 기기에서는 이런식의 오류코드가 나옵니다.

  • react-native
dvdve 댓글 2 좋아요 0 조회수 167

서비스에 @Transactional 애노테이션을 사용하시지 않는 이유가 궁금합니다

해결됨

서버개발자 과제전형 완벽가이드 - 1편

안녕하세요 궁금한게 있어 질문 남깁니다. 보통 데이터베이스 사용시 서비스 단에 @Transactional을 관습적으로 붙여왔는데, 서비스 로직을 작성하실때 @Transactional 애노테이션을 사용하시지 않은 건 비즈니스 로직이 너무 간단하기 때문에(트랜잭션 논리 단위로 묶을 필요없을 정도로) 생략하신거라고 이해하면 될까요? 답변 감사합니다

  • java
  • spring
  • spring-boot
  • database
이진우 댓글 2 좋아요 0 조회수 218

USER 명령어와 관련하여 질문드립니다

해결됨

개발자를 위한 쉬운 도커

Dockerfile-meta 작성하실 때, USER node를 작성하셨는데, 실제로 컨테이너가 실행되는 환경에서 node가 없으면 에러나야할 것 같은데, node:14환경에서는 node user가 이미 존재하는 이미지인건가요?

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
최성욱 댓글 1 좋아요 1 조회수 144

컨테이너 사진 추가

미해결

비전공자도 따라하는 워드프레스 홈페이지 제작

강의에서 컨테이너에서 사진 추가하고 하면 사진이 화면 가득 찬다고했는데 저는 가득 차지않아서요 full 부분도 했습니다. 레이아웃으로 수동으로 키워야하는 수준입니다.

  • wordpress
  • 도메인
  • no-code
eodnr293 댓글 1 좋아요 0 조회수 142

1강 관련하여 의견을 여쭙고 싶은 게 있습니다.

해결됨

React Three fiber(R3F)로 배우는 인터렉티브 3D 웹 개발

안녕하세요 선생님. 무료보기 시청 후 바로 결제해서 달리고 있습니다. 하루 1강씩 뚫어보려고 합니다 😋 다름이아니라 DOM, SVG, Canvas를 비교해서 설명해주신 부분에서 의견을 여쭙고 싶은 내용이 있었습니다. Canvas의 2D Context보다 3D Context(WebGL)가 더 빠른 이유 이전에 2D Context를 공부하면서, 3D Context는 하드웨어 가속이 가능하기 때문에 더 빠르다는 글을 읽은 적이 있었습니다. 그런데 렌더링 자체는 Canvas 2D도 하드웨어 가속으로 처리되는 걸로 알고 있어서요. (간단한 작업은 CPU에서 처리한다는 글도 읽은 적 있었는데 어느 쪽이 맞는 말인지 사실 잘 모르겠습니다...) 아래 두 가지 중 어느 쪽이 WebGL Context가 2D Context보다 더 빠른 이유에 더 적합할까요? 2D Context는 일부 CPU에서 렌더링하기도 하지만, WebGL은 전부 GPU에서 렌더링한다. WebGL은 셰이더를 GPU에서 실행시키기 때문에 2D Context보다 CPU 처리량이 적다. 수많은 개체를 애니메이션 할 때 더 적합한 쪽 : WebGL API vs DOM(or SVG) + transform 속성 DOM 계산은 기본적으로 비용이 많이 발생하니, 수많은 개체를 '렌더링' 할 때에는 WebGL이 훨씬 유리할 것 같았는데, 위치를 옮긴다던가, 크기를 변경하는 애니메이션을 적용할 때에는 강사님께서는 WebGL과 transform 속성 중 어느 쪽을 더 선호하시나요? WebGL도 transform 속성도 레이아웃 재계산을 발생시키지 않지만, 전자는 JS로 조작해야하고, 후자는 조작은 css로 하지만 브라우저 레이어를 활용하는 것으로 알고 있어서요. 어느 쪽이 더 효율적일까요...? 강의 중 보여주신 아래 그림에서, SVG의 사각형과 텍스트만 테두리가 좀 흐리게 보이고 있는데 이런 현상이 왜 발생하는걸까요? 이론 적으로는 SVG가 가장 깔끔해야할 것 같은데 픽셀이 깨질 정도로 확대하지 않는 이상은 SVG 쪽이 더 흐릿하게 보이는 것 같아 여쭤봅니다. 사실 강의도 강의지만, 평소에 고민하던 것을 여쭤본 것이기도 해서 가볍게 답변해주시더라도 너무 감사할 것 같습니다. 힘내서 완강해보겠습니다..! 감사합니다.

  • javascript
  • react
  • typescript
  • 인터랙티브-웹
  • three.js
  • webgl
  • react-three-fiber
dbjoung 댓글 1 좋아요 0 조회수 190

autowired에 대한 고찰 이 코드도 결국 스프링이 자동으로 의존성을 주입해주는 코드일텐데 어째서 Autowired는 지양되고 이러한 코드는 사용해도 되는건가요? lombok을 통한 생성자주입과 autowired를 통한 생성자 주입은 어떤 다른 점이 있는

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

autowired에 대한 고찰 이 코드도 결국 스프링이 자동으로 의존성을 주입해주는 코드일텐데 어째서 Autowired는 지양되고 이러한 코드는 사용해도 되는건가요? lombok을 통한 생성자주입과 autowired를 통한 생성자 주입은 어떤 다른 점이 있는건가요

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
류재열 댓글 1 좋아요 0 조회수 194

QAxBase::setControl: requested control KHOPENAPI.KHOpenAPICtrl.1 could not be instantiated Traceback (most recent call last):

미해결

ActiveX 설정 : KHOpenAPI 는 ActiveX 컨트롤을 사용합니다. 이 컨트롤이 설치되어 있는지, 그리고 32비트 환경에서 설치 및 등록이 되어있는지 확인해보세요. 키움증권에서 제공하는 OpenAPI+ 설치 프로그램을 다시 다운로드 및 설치하여 환경을 재설정해 보시기를 추천합니다. 파이썬 32비트 확인 : kiwoom 모듈은 32비트에서 작동하도록 설계되어 있습니다. 현재 사용하시는 파이썬이 32비트 버전인지 python -V 및 패키지 목록 등을 통해 확인해보세요. 만약 64비트라면, 32비트 파이썬으로 가상환경을 다시 설정하여 pykiwoom 및 필요한 모듈들을 설치해야 할 수 있습니다. 참조 URL : 비슷한 문제를 겪었던 다른 사용자의 해결 과정을 참조하시기 바랍니다: “pykiwoom 설치 에러 나시는 분 참조 함 해보세요.” - 여기에서는 Python 10.04 32bit 버전을 사용하여 문제를 해결한 경험을 공유하고 있습니다. 다 했는데도 동일한 에러 메시지가 뜹니다( 1번은 30번 넘게 새로깔고 다시 부팅하고 중간에 32비트 환경설정하는거 없이 바로 바로 넥스트입니다 참고로 저는 윈도우10입니다 2번 32비트 확인했습니다 (kiwoom32) PS C:\Users\main> python -c "import platform; print(platform.architecture())" >> ('32bit', 'WindowsPE') (kiwoom32) PS C:\Users\main> 3번 저는 윈도우10입니다 (kiwoom32) PS C:\Users\main> py "C:\Users\main\Desktop\kiwoom\from1.py" QAxBase::setControl: requested control KHOPENAPI.KHOpenAPICtrl.1 could not be instantiated Traceback (most recent call last): File "C:\Users\main\Desktop\kiwoom\from1.py", line 3, in <module> kiwoom = Kiwoom() ^^^^^^^^ File "C:\Users\main\AppData\Roaming\Python\Python312\site-packages\pykiwoom\ kiwoom.py ", line 36, in init self._set_signals_slots() File "C:\Users\main\AppData\Roaming\Python\Python312\site-packages\pykiwoom\ kiwoom.py ", line 221, in set signals_slots self.ocx.OnReceiveTrData.connect(self.OnReceiveTrData) ^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: 'QAxWidget' object has no attribute 'OnReceiveTrData' (kiwoom32) PS C:\Users\main>

major 댓글 1 좋아요 0 조회수 181

읜존관계 주입 정의

미해결

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 의존관계 - 실행하지 않아도 해당 클래스에서 다른 클래스를 사용하는 것을 알 수 있는 것을 의존 관계 MemberReposiorty, DiscountPolicy를 직접 생성하지 않았지만 OrderSerivceImpl 클래스에서 사용하고 있으니 의존 관계 의존관계 주입 - 해당 클래스에서 직접 생성하지 않고 다른 생성자, 메서드 같은 외부에서 들어온 객체를 의존관계 주입이라고 할 수 있는 것 제가 정의 한 내용이 맞을까요? 어떨때 쓰이는지는 알겠지만 정의가 잘 되지 않아 질문 드립니다 :)

  • spring
  • 객체지향
딩띵 댓글 1 좋아요 0 조회수 111

토큰 발급 관련 문의 드립니다.

미해결

생산성을 향상시키는 스프링부트 기반의 API 템플릿 프로젝트 구현

강사님 안녕하세요, 토큰 발급과 관련하여 문의드립니다. :) 카카오 토큰 발급 요청 시 공식 문서( POST & Content-Type: application/x-www-form-urlencoded;)에 따라 메시지 바디에 쿼리 파라미터 형식으로 데이터를 전달해야하는 것으로 이해했습니다. 1.1. 요청을 받는 카카오 입장에선 데이터가 쿼리 파라미터 형식이라면 아래 두 경우를 모두 처리할 수 있나요? - URL 쿼리 파라미터에 데이터를 포함해서 전달한 경우 - 메시지 바디에 쿼리 파라미터 형식으로 데이터를 전달한 경우 1.2. 1.1.이 맞다면, PostMapping으로 @SpringQueryMap KakaoTokenDto.Request request와 같이 정의한 이유가 무엇일지요? 바디가 아닌 URL 쿼리 파라미터에 데이터를 포함했을 때 이점이나 별도 차이가 있는지요? 아니면 단순 선택사항일지요? 2.1. 만약 메시지 바디에 쿼리 파라미터 형식으로 전달하고자 한다면, 토큰 발급에 성공하는 아래 방식 중 어떤 방식이 제일 적절한지와 의견 알 수 있을까요? @PostMapping(value = "/oauth/token", consumes = APPLICATION_FORM_URLENCODED_VALUE) KakaoTokenResponse requestKakaoToken(@RequestBody KakaoTokenRequest request); @PostMapping(value = "/oauth/token", consumes = APPLICATION_FORM_URLENCODED_VALUE) KakaoTokenResponse requestKakaoToken(@ModelAttribute KakaoTokenRequest request); @PostMapping(value = "/oauth/token", consumes = APPLICATION_FORM_URLENCODED_VALUE) KakaoTokenResponse requestKakaoToken(KakaoTokenRequest request); 2.2. 2.1.의 KakaoTokenResponse requestKakaoToken(KakaoTokenRequest request)의 경우, @RequestBody 애노테이션이 생략되어 처리되는게 맞을지요? 어떤 방식에 의해 처리되는지 궁금합니다.

  • spring-boot
  • jpa
  • web-api
shsf 댓글 2 좋아요 0 조회수 198

프로젝트 자동 빌드 자동 동기화 문제

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 김영한 님이 올리신 코드를 그대로 내려받거나, 새로 스피링부트 프로젝트를 생성해도 한 30초에 한번씩 계속 새로고침이됩니다. 계속 자동 동기화가 되고 있는 것 같아요 설정이나 프로포티스를 건들이거나 하지 않았는데 계속 자동 빌드가 되어서 수정중인 파일이 닫히고를 반복해요 ㅜ 'void org.gradle.api.internal.artifacts.dsl.LazyPublishArtifact.<init>(org.gradle.api.provider.Provider)'

  • spring
  • mvc
ghdwn49 댓글 2 좋아요 0 조회수 137

AWS EC2 Node 설치

미해결

하루만에 배우는 express with AWS

다음과 같은 양식으로 남겨주세요. 질문을 한 배경 : AWS EC2 Node 설치 질문내용 :AWS EC2 Node 설치강의에서 50초부분에 사이트가 어디에 알려주는게 맞는거 같습니다

  • node.js
  • postgresql
  • mongodb
  • express
정인석 댓글 3 좋아요 0 조회수 242

pdf 자료들 다운이 안됩니다.

해결됨

(2027 대비!) 일주일만에 합격하는 정보처리기사 실기

강의 목록에서 pdf 해당되는 목록 클릭하면 하얀 화면만 나오고 pdf 파일 다운이 안되는데 일시적인 문제일까요?

  • python
  • java
  • c
  • 정보처리기사
곽경호 댓글 2 좋아요 0 조회수 222

인기 태그

인프런 TOP Writers

주간 인기글