묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[개념반]배워서 바로 쓰는 SQL 쿼리
count(distinct) 구문 오류 질문드립니다.
안녕하세요, count(distinct) 구문을 사용하려고 할 때마다 해당 오류가 발생합니다.limit의 경우도 오류가 발생하여 구글링해보니 SQLServer에서는 top을 사용한다고 하여 문제를 해결하였는데, count(distinct)에 대해서는 문제 해결방법을 찾지 못해 질문 드립니다.또한, 같은 실습 환경에서 실행하였는데 왜 저는 limit이 작동하지 않는 등 문제가 발생하는 것인지도 궁금하여 질문드립니다.감사합니다.
-
미해결홍정모의 따라하며 배우는 C++
6.3 배열과 반복문 const 관련 질문입니다.
다른 질문에서 배열의 크기는 const 상수로 컴파일 크기를 통해서 정해줘야한다는 답변은 이해했습니다!그런데 int scores[] = { ...}; 는 올바른 형식이잖아요?그렇다면 배열의 크기는 알아서 설정이 되었다고 생각됩니다.그래서, 여기서 num_students에 const를 하신 이유가 궁금합니다.여기서의 num_students는 배열 정의시에 들어가지 않고 for문에서 단순 조건문에 들어갈 뿐인데, const를 한 이유가 궁금합니다!. 제가 cosnt를 빼고 실행했을때도 실행이 되더라구요!.처음에 배열 사이즈 변수로 넣으려고 할 때 const가 붙여있어서 그랬던 것이고, 나중에 다른 케이스 변경하면서 굳이 지우지 않았던 것인가요?감사합니다.
-
미해결홍정모의 따라하며 배우는 C언어
8.8 텍스트 파일 만들기 예제에서 질문 있습니다.
아래와 같이 강의와 똑같이 코드를 작성하고 텍스트 파일도 Project1.vcxproj 파일과 같은 파일에 있는데 파일이 열리지 않습니다! 뭐를 잘못하고 있는지 알고 싶습니다! 코드 #define CRTSECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h> //exit()int main(){ int c; FILE* file = NULL; char file_name[] = "my_file.txt"; file = fopen(file_name, "r"); if (file == NULL) { printf("Failed to open file.\n"); exit(1); } while ((c = getc(file)) != EOF) putchar(c); fclose(file); return 0;} 출력Failed to open file.C:\Users\LG\Documents\Visual Studio 2022\Project1\x64\Debug\Project1.exe (process 18144) exited with code 1.Press any key to close this window . . .
-
미해결루커 스튜디오(구글 데이터 스튜디오)로 배우는 데이터 시각화 입문
GA4 할당량 오류...
할당량 오류로 아무것도 표시되지 않는데 해결방법 아시는 분
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
강의자료 요청
안녕하세요. 강의자료 부탁드립니다. pony75@naver.com
-
미해결루커 스튜디오(구글 데이터 스튜디오)로 배우는 데이터 시각화 입문
혼합 데이터를 한 번 만들면
혼합 데이터를 한 번 만들면 이제 그 보고서에서는 혼합데이터만 쓸 수 있나요? 혼합 데이터의 재료가 된 GA랑 구글 스프레드시트는 개별로 못쓰게 되는건가요?
-
미해결바닥부터 시작하는 STM32 드론 개발의 모든 것
플로터 사용 문의
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 아두이노 IDE 최신 버전에서 툴-->시리얼 플로터, 클릭해도 실행이 안됩니다. 혹시 어떻게 실행 해야 할까요 ? 소스 코드가 필요하나요 ?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
교안 1.2 기본 코드 에러가 납니다!
#include <bits/stdc++.h> // --- (1) using namespace std;// --- (2) string a;// --- (3) int main(){ cin >> a;// --- (4) cout << a << "\n";// --- (5) return 0; // - (6) }1.2 기본 예제로 이해하는 c++에서 vscode에서 실행 시a.cpp:18:8: error: use of undeclared identifier 'a' cin >> a;// --- (4) ^ a.cpp:19:9: error: use of undeclared identifier 'a' cout << a << "\n";// --- (5) return 0; // - (6) ^ 2 errors generated.아래처럼 에러가 납니다.파일은 꼭 include/bits 폴더안에 정리하지않고 데스크탑내에 따로 폴더를 만들어서 실행해도 무방한가요?그렇게 했을 때 위 코드말고는 코드러너로 실행은 잘 되는데 혹시나해서 여쭤봅니다!
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
한국어로 시험을 응시할때 강의 PDF와 해석이 비슷한가요??
강의에서 나오는 단어들과 시험장에서 한국어로 응시될때 해석되는 단어들에 차이가 많을지 여쭤보고 싶습니다!
-
미해결Slack 클론 코딩[실시간 채팅 with React]
react-router-dom 오류
여기서 react-router-dom에 쓰이는 Switch, Route, Redirect에서 오류가 발생했습니다.그래서 react-router-dom 버전 문제가 있어서 코드를 바꿔서 진행했습니다. 결론은 여전히 빨간색 오류가 발생하는데 어떤 부분이 오류인지 찾기 힘들어서 여쭤봅니다!!BrowserRouter 추가하는 것도 오류가 발생합니다 Its instance type 'BrowserRouter' is not a valid JSX element. TS2786: 'BrowserRouter' cannot be used as a JSX component. The types returned by 'render()' are incompatible between these types. Type 'React.ReactNode' is not assignable to type 'import("C:/Users/user/node_modules/@types/hoist-non-react-statics/node_modules/@types/react/index").ReactNode'. Type '{}' is not assignable to type 'ReactNode'.오류메시지입니다 react-router-dom 버전 "react-router": "^5.3.4", "react-router-dom": "^5.3.4", "@types/react-router": "^5.1.20", "@types/react-router-dom": "^5.3.3",
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
XOR 연산자 설명 확인 부탁 드립니다.
안녕하세요.우선 타 강의 플랫폼과 달리 큰돌님 강의는 개념과 문제풀이를 그림으로 그리면서 설명 해주셔서 너무 잘 듣고 있습니다. (C++ 은 안하고 Javascript로만 풀이 중)그런데 비트연산자 개념강의 2번째 영상에서 일부 확인이 필요한 설명이 있는것 같아서 글 남깁니다. (오타는 이미 공지를 해주셨네요)마지막 XOR 연산자에서 0은 1로 1은 0으로 라는 설명이 있는데위키피디아에 설명된 것 처럼 각 자릿수를 비교해 같으면 0, 다르면 1이라는 설명이 맞지 않나 싶습니다.(https://ko.wikipedia.org/wiki/%EB%B9%84%ED%8A%B8_%EC%97%B0%EC%82%B0)강의 중 예제로 보면n = 5 이고 idx = 0 일 때 n ^= (1 << idx) = 101 ^ 001 = 100 ////////// 101 ^ 001 ----- 100 //////////앞에서부터 각 자릿수를 비교해보면1과 0은 다르므로 1 ,0과 0은 같으므로 0 ,1과 1이 같으므로 0이 아닌가 싶습니다.
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
스프링 부트 3.0 findAll() 쿼리
안녕하세요!!강의 너무 잘 보고 있는 수강생입니다! 스프링 부트 3.0.1 버전으로 프로젝트를 생성해 강의를 듣다가 단순 전체 조회 쿼리(/api/v2/orders)인 findAll()에서 쿼리가 강의와 다르게 나와 궁금증이 생겨 질문 드립니다.제가 이해하기로는 /api/v2/orders를 호출하면 다음과 같은 순서로 데이터를 가져온다고 생각했습니다.orders 조회하는 쿼리 호출OrderDto 를 만드는 과정에서 getMember()와 getDelivery() 를 호출할 때 Member와 Delivery를 가져오는 쿼리 호출getOrderItems() 를 통해 orderItems 조회하는 쿼리 호출OrderItemDto 를 만드는 과정에서 getItem()을 호출할 때 각각의 Item을 가져오는 쿼리 호출그래서 강의처럼 데이터를 초기화 한다면 총 11번의 쿼리가 발생해야 한다고 생각했고 강의에서도 11번의 쿼리가 생겼습니다.하지만 제 코드에서는 getDelivery() 를 호출하는 과정에서 이상하게 Delivery를 호출한 후, deliveryId 를 조건절로 Order를 조회하는 쿼리가 한 번 더 생겨 아래 로그처럼 총 13번의 쿼리가 발생했습니다. 2023-01-14T18:10:31.860+09:00 DEBUG 6590 --- [nio-8070-exec-2] org.hibernate.SQL : select o1_0.order_id, o1_0.delivery_id, o1_0.member_id, o1_0.order_date, o1_0.status from orders o1_0 2023-01-14T18:10:31.890+09:00 DEBUG 6590 --- [nio-8070-exec-2] org.hibernate.SQL : select m1_0.member_id, m1_0.city, m1_0.street, m1_0.zipcode, m1_0.name from member m1_0 where m1_0.member_id=? 2023-01-14T18:10:31.890+09:00 TRACE 6590 --- [nio-8070-exec-2] org.hibernate.orm.jdbc.bind : binding parameter [1] as [BIGINT] - [1] 2023-01-14T18:10:31.895+09:00 DEBUG 6590 --- [nio-8070-exec-2] org.hibernate.SQL : select d1_0.delivery_id, d1_0.city, d1_0.street, d1_0.zipcode, d1_0.status from delivery d1_0 where d1_0.delivery_id=? 2023-01-14T18:10:31.895+09:00 TRACE 6590 --- [nio-8070-exec-2] org.hibernate.orm.jdbc.bind : binding parameter [1] as [BIGINT] - [1] 2023-01-14T18:10:31.899+09:00 DEBUG 6590 --- [nio-8070-exec-2] org.hibernate.SQL : select o1_0.order_id, o1_0.delivery_id, o1_0.member_id, o1_0.order_date, o1_0.status from orders o1_0 where o1_0.delivery_id=? 2023-01-14T18:10:31.900+09:00 TRACE 6590 --- [nio-8070-exec-2] org.hibernate.orm.jdbc.bind : binding parameter [1] as [BIGINT] - [1] 2023-01-14T18:10:31.910+09:00 DEBUG 6590 --- [nio-8070-exec-2] org.hibernate.SQL : select o1_0.order_id, o1_0.order_item_id, o1_0.count, o1_0.item_id, o1_0.order_price from order_item o1_0 where o1_0.order_id=? 2023-01-14T18:10:31.910+09:00 TRACE 6590 --- [nio-8070-exec-2] org.hibernate.orm.jdbc.bind : binding parameter [1] as [BIGINT] - [1] 2023-01-14T18:10:31.914+09:00 DEBUG 6590 --- [nio-8070-exec-2] org.hibernate.SQL : select i1_0.item_id, i1_0.dtype, i1_0.name, i1_0.price, i1_0.stock_quantity, i1_0.author, i1_0.isbn from item i1_0 where i1_0.item_id=? 2023-01-14T18:10:31.915+09:00 TRACE 6590 --- [nio-8070-exec-2] org.hibernate.orm.jdbc.bind : binding parameter [1] as [BIGINT] - [1] 2023-01-14T18:10:31.916+09:00 DEBUG 6590 --- [nio-8070-exec-2] org.hibernate.SQL : select i1_0.item_id, i1_0.dtype, i1_0.name, i1_0.price, i1_0.stock_quantity, i1_0.author, i1_0.isbn from item i1_0 where i1_0.item_id=? 2023-01-14T18:10:31.917+09:00 TRACE 6590 --- [nio-8070-exec-2] org.hibernate.orm.jdbc.bind : binding parameter [1] as [BIGINT] - [2] ============================================== 2023-01-14T18:10:31.919+09:00 DEBUG 6590 --- [nio-8070-exec-2] org.hibernate.SQL : select m1_0.member_id, m1_0.city, m1_0.street, m1_0.zipcode, m1_0.name from member m1_0 where m1_0.member_id=? 2023-01-14T18:10:31.919+09:00 TRACE 6590 --- [nio-8070-exec-2] org.hibernate.orm.jdbc.bind : binding parameter [1] as [BIGINT] - [2] 2023-01-14T18:10:31.921+09:00 DEBUG 6590 --- [nio-8070-exec-2] org.hibernate.SQL : select d1_0.delivery_id, d1_0.city, d1_0.street, d1_0.zipcode, d1_0.status from delivery d1_0 where d1_0.delivery_id=? 2023-01-14T18:10:31.921+09:00 TRACE 6590 --- [nio-8070-exec-2] org.hibernate.orm.jdbc.bind : binding parameter [1] as [BIGINT] - [2] 2023-01-14T18:10:31.922+09:00 DEBUG 6590 --- [nio-8070-exec-2] org.hibernate.SQL : select o1_0.order_id, o1_0.delivery_id, o1_0.member_id, o1_0.order_date, o1_0.status from orders o1_0 where o1_0.delivery_id=? 2023-01-14T18:10:31.923+09:00 TRACE 6590 --- [nio-8070-exec-2] org.hibernate.orm.jdbc.bind : binding parameter [1] as [BIGINT] - [2] 2023-01-14T18:10:31.925+09:00 DEBUG 6590 --- [nio-8070-exec-2] org.hibernate.SQL : select o1_0.order_id, o1_0.order_item_id, o1_0.count, o1_0.item_id, o1_0.order_price from order_item o1_0 where o1_0.order_id=? 2023-01-14T18:10:31.926+09:00 TRACE 6590 --- [nio-8070-exec-2] org.hibernate.orm.jdbc.bind : binding parameter [1] as [BIGINT] - [2] 2023-01-14T18:10:31.927+09:00 DEBUG 6590 --- [nio-8070-exec-2] org.hibernate.SQL : select i1_0.item_id, i1_0.dtype, i1_0.name, i1_0.price, i1_0.stock_quantity, i1_0.author, i1_0.isbn from item i1_0 where i1_0.item_id=? 2023-01-14T18:10:31.927+09:00 TRACE 6590 --- [nio-8070-exec-2] org.hibernate.orm.jdbc.bind : binding parameter [1] as [BIGINT] - [3] 2023-01-14T18:10:31.928+09:00 DEBUG 6590 --- [nio-8070-exec-2] org.hibernate.SQL : select i1_0.item_id, i1_0.dtype, i1_0.name, i1_0.price, i1_0.stock_quantity, i1_0.author, i1_0.isbn from item i1_0 where i1_0.item_id=? 2023-01-14T18:10:31.928+09:00 TRACE 6590 --- [nio-8070-exec-2] org.hibernate.orm.jdbc.bind : binding parameter [1] as [BIGINT] - [4] ============================================== 혹시나 제가 코드를 잘못 작성했을까봐 강의 자료로 올라온 소스코드에서 default_batch_fetch_size 만 주석 처리하고 스프링 부트 3.0 환경에서 돌려봤는데 같은 결과가 나왔고, JpaRepository 를 통한 findAll 로 두 버전에서 모두 테스트를 해봤는데 같은 결과가 발생했습니다. 그래서 Delivery에 @OneToOne으로 걸려있는 order가 문제라 생각해 이 부분을 지우고 실행했더니 해당 쿼리가 사라졌습니다. 하지만 @OneToOne의 패치 전략을 Lazy로 하고 따로 Order를 조회하지 않았고, 맨 처음 orders를 조회하는 쿼리를 실행하는 과정에서 영속성 컨텍스트에 orders가 저장 되기도 했기 때문에 해당 쿼리가 생기면 안된다고 생각을 했는데 혹시 제가 잘못 이해하고 있는걸까요..? 스프링 부트 3.0으로 올라가는 과정에서 hibernate의 버전도 6으로 올라가 뭔가 변경이 생긴것인지, 아니면 제가 어떤 실수를 하고 있는건지 궁금해서 질문 드립니다..!
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
ledblink 하는 부분, build가 되지 않습니다.
안녕하세요,,, 혹시 build 파일이 directory에 있지 않은 건지 실행이 되지 않는데 혹시 무슨 문제일까요?
-
미해결홍정모의 따라하며 배우는 C++
06:55질문
06:55 에서 static const double pi=3.141592;를 헤더로 따로 나눈다고 하셨는데요그럼 해당 헤더파일을 사용하는 cpp파일마다 해당 변수의 메모리를 따로 만들어지니까 별로 안좋지 않나요??
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
Vue3 쓰시는분들 트랜지션 설정 팁
실무에서 쓸일이 있어서 복습하다보니 Vue 버전이 바뀌어서 강의 내용보면서 Vue3 에 맞게 적용중인데요. 우선 아래 레퍼런스 참고하시면 될 듯 합니다. 강의내용과는 크게 다른건 없긴합니다.https://vuejs.org/guide/built-ins/transition.html#the-transition-componenthttps://vuejs.org/examples/#list-transitionTodoList.vue<template> <div> <!-- name 은 하단의 css 클래스 transition class 와 연관--> <TransitionGroup tag="ul" name="list" class="container"> <li v-bind:key="todoItem.item" v-for="(todoItem, index) in propsdata" class="shadow"> <i class="checkBtn fa-solid fa-check" v-bind:class="{checkBtnCompleted: todoItem.completed}" v-on:click="toggleComplete(todoItem, index)"></i> <span v-bind:class="{textCompleted : todoItem.completed}" >{{ todoItem.item }} </span> <!--{{ index }}--> <span class="removeBtn" v-on:click="removeTodo(todoItem, index)"> <i class="fa-solid fa-trash"></i> </span> </li> </TransitionGroup> </div> </template> <style> /* 기존 css 는 생략, 아래 레퍼런스 css 참고 https://vuejs.org/examples/#list-transition */ /* 리스트 아이템 트랜지션 효과 */ /* 1. declare transition */ .list-move, .list-enter-active, .list-leave-active { transition: all 0.5s cubic-bezier(0.55, 0, 0.1, 1); } /* 2. declare enter from and leave to state */ .list-enter-from, .list-leave-to { opacity: 0; transform: translateY(30px); } /* 3. ensure leaving items are taken out of layout flow so that moving animations can be calculated correctly. */ .list-leave-active { position: absolute; transition: all 1s; } </style>
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
[ 동영상 플레이어 ] 강의에 대한 추가 의견 !
안녕하세요, 코드팩토리 덕분에 코딩의 재미를 다시 느끼고 있는 사람입니다. 동영상 플레이어를 다 만들고나서 문득 '유튜브처럼 스크린이 애니메이션으로 부드럽게 렌더링되면 더 보기 좋겠다' 라는 생각이 들어서 아래와 같이 간단하게 코드를 추가해서 작성했습니다.실생활에서 자주쓰는 앱과 비슷하게 동작하도록 위젯트리를 구성하면 코딩의 재미가 한층 더 높아질 것 같아서 의견남겨봅니다 ㅎㅎAspectRatio( aspectRatio: _controller.value.aspectRatio, child: Stack(children: [ VideoPlayer(_controller), AnimatedOpacity( opacity: isShown ? 1.0 : 0.0, duration: const Duration(milliseconds: 300), child: Column( children: [ _NewVideoButton( onPressed: widget.onGalleryClicked, ), _VideoControlScreen( onForwardPressed: onForwardPressed, onPlayPressed: onPlayPressed, onRewindPressed: onRewindPressed, isPlaying: _controller.value.isPlaying, ), _VideoSlider( currentPosition: currentPosition, maxPosition: _controller.value.duration, onSliderChanged: (val) { _controller.seekTo(Duration(seconds: val.toInt())); }) ], ), ) ]),
-
미해결팀 개발을 위한 Git, GitHub 입문
소스트리 오류
m2 맥북 air 사용중인데 소스트리 git 저장소 추가부터 에러가 납니다m2 칩을 지원하지 않는 것 같은데 혹시 맞나요??
-
미해결PHP 7+ 프로그래밍: 객체지향
xdebug 설치
안녕하세요, 선생님php객체지향의 첫 번째 강의인 '환경' 강의를 따라가면서 xdebug를 설치하고 이를 phpinfo()함수로 브라우저에서 확인하던 중에 xdebug가 없던 것을 발견했습니다. 강의에서 php.ini파일만 있던 것과는 다르게 php.ini-production과 php.ini-develpoment파일 2개가 있더라구요. 그래서 2개의 파일 이름을 모두 php.ini로 바꿔주고 xdebug실행을 위해 강의에서 해준대로 똑같이 설정해주었습니다. 이후에, phpinfo()로 확인해보니, xdebug가 없더라구요.커맨드 창에 php --ini 를 실행하면, 다음과 같은 결과가 출력됩니다.PHP Warning: Failed loading Zend extension 'xdebug' (tried: C:\php\ext\xdebug ( 吏?뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎), C:\php\ext\php_xdebug.dll (吏?뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎)) in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'curl' (tried: C:\php\ext\curl (吏?뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎), C:\php\ext\php_curl.dll (吏?뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎)) in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'fileinfo' (tried: C:\php\ext\fileinfo (吏?뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎), C:\php\ext\php_fileinfo.dll (吏?뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎)) in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'mbstring' (tried: C:\php\ext\mbstring (吏?뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎), C:\php\ext\php_mbstring.dll (吏?뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎)) in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'mysqli' (tried: C:\php\ext\mysqli (吏?뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎), C:\php\ext\php_mysqli.dll (吏? 뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎)) in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'openssl' (tried: C:\php\ext\openssl (吏?뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎), C:\php\ext\php_openssl.dll ( 吏?뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎)) in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'pdo_mysql' (tried: C:\php\ext\pdo_mysql (吏?뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎), C:\php\ext\php_pdo_mysql.dll (吏?뺣맂 紐⑤뱢??李얠쓣 ???놁뒿?덈떎)) in Unknown on line 0 Configuration File (php.ini) Path: Loaded Configuration File: C:\php8.2\php.ini Scan for additional .ini files in: (none) Additional .ini files parsed: (none) php_xdebug.dll 파일 안의 내용은 건든 적이 없는데, 뭐가 문제일까요???구글링을 통해서 문제를 찾아보려해도 이러한 종류의 에러 대처 방안을 찾지못했네요..독학으로 개발자를 준비하는 게 원래 이렇게 힘들고 고된 일일까요
-
미해결홍정모의 따라하며 배우는 C++
3이 아니구요?
3:58 초 부근에서 foo(x,y+1);인데 y=2이니까 2+1해서 3이 전달되는거 아닌가요????
-
미해결한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
크롬 개발자도구로 확인했을 때 key값이 20부터 나오는 경우
해당 강의 3분 30초 이후부터 컴포넌트 창에 들어가서 DiaryList 컴포넌트의 DiaryItem들을 확인하는 장면이 나와있습니다. 강사님의 화면에서는 키값들이 0부터 잘 출력되지만 저는 아래와 같이키값들이 20부터 39까지 출력됩니다.useEffect를 건들이기 전 일기를 추가하는 부분에서는 키값들이 0부터 잘 출력되는 것을 보아 이번 강의에서 건들인 부분이 문제인것 같아 강사님이 올려주신 App.js 코드를 복붙하여 실습해보아도 해당 현상이 일어납니다. 그 이유를 알 수 있을까요?