묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 핵심 원리 - 기본편
롬복 라이브러리 등록
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) y2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) y3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) y[질문 내용]여기에 질문 내용을 남겨주세요.강의자료대로 작성하였는데 오류가 떠요..!두번째 사진은 오류코드입니다 !!
-
미해결15일간의 빅데이터 파일럿 프로젝트
가상서버 이미지 다운 에러
가상서버 이미지 다운시 전체 용량을 다운로드 못받네요.확인 후 다시 링크 주시면 감사하겠습니다.
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
useSWRInfinite 관련
const listFetcher = async () => { const res = await apiClient.get(`/notices`, { params: { siteKey: sitekey || selectsite, keyword: searchData || null, page: page, size: 5, orderOption: sortModel.field || "createAt", orderSeq: sortModel.sort || "desc", }, }); console.log("res.data.payload.notices", res.data.payload.notices); return res.data.payload.notices; }; const getKey = (pageIndex, previousPageData) => { if (previousPageData && !previousPageData.length) return null; return { url: `/notices?${pageIndex}`, }; }; const { data, error, size: page, setSize: setPage, isValidating, mutate, } = useSWRInfinite(getKey, listFetcher); const isInitialLoading = !data && !error; const posts = data ? [].concat(...data) : []; const [observedPost, setObservedPost] = useState(""); useEffect(() => { // 포스트가 없다면 return if (!posts || posts.length === 0) return; // posts 배열안에 마지막 post에 id를 가져옵니다. const id = posts[posts.length - 1].noticeNo; // posts 배열에 post가 추가돼서 마지막 post가 바뀌었다면 // 바뀐 post 중 마지막post를 obsevedPost로 if (id !== observedPost) { setObservedPost(id); observeElement(document.getElementById(id)); } }, [posts]); const observeElement = (element) => { if (!element) return; // 브라우저 뷰포트(ViewPort)와 설정한 요소(Element)의 교차점을 관찰 const observer = new IntersectionObserver( // entries는 IntersectionObserverEntry 인스턴스의 배열 (entries) => { // isIntersecting: 관찰 대상의 교차 상태(Boolean) if (entries[0].isIntersecting === true) { console.log("마지막 포스트에 왔습니다."); setPage(page + 1); observer.unobserve(element); } }, { threshold: 0.5 } ); // 대상 요소의 관찰을 시작 observer.observe(element); };useSWRInfinite 포스트 작성중인데, 위와 같이 처리했더니 맨끝 스크롤 이동시 api 호출이 더이상 되지 않고 있는데 이유를 알고 싶습니다!
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
할당된 메모리를 감싸는 'cccccccc' 질문 드립니다
멤버변수 int hp; 하나만 지정 하고a.hp=1;b.hp=2; 식으로 a,b 로 각각 대입했을때 메모리가 cccccccc0000002cccccccccccccccc0000001cccccccc 식으로 메모리가 올라오는데 감싸고 있는 'cccccccc' 의미가 있는 값인가요?
-
미해결홍정모의 따라하며 배우는 C언어
8.8 메뉴 만들기 예제 개행 입력시 문자가 무시됩니다
안녕하세요! 아래의 코드를 실행시킨 뒤 먼저 '\n'입력 후 원하는 메뉴키를 입력하면 원하는대로 처리가 되지 않아요.가령 이런식으로 엔터를 먼저 입력하고 q를 입력하면 quit를 실행하지 않고 다시 while문을 돌더라고요.디버거로 한단계씩 살펴보니 문제는 get_first_char()함수에서 발생하는데, 처음에 getchar() 함수로 개행(\n)을 받으면서 다음 버퍼비우기(?) 코드에서 또 다시 입력을 받는 것 같고, 이 함수의 리턴값은 처음에 받았던 개행(c='\n')으로 나가서 생기는 문제 같은데요..이 코드에서 어떻게 고쳐야 처음 들어올 개행도 입력오류처럼 처리할 수 있을까요?? 코드는 아래와 같습니다! #define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>char get_choice(void);char get_first_char(void);int get_integer(void);void count(void);int main(){int user_choice;while ((user_choice = get_choice()) != 'q'){switch (user_choice){case 'a':printf("Avengers assemble!\n");break;case 'b':putchar('\a');break;case 'c':count();break;default:printf("Error with %d.\n", user_choice);exit(1);break;}}return 0;}void count(void){int n, i;printf("Enter an interger:\n");n = get_integer();for (i = 1; i <= n; ++i)printf("%d\n", i);while (getchar() != '\n')continue;}char get_choice(void){int user_input;do{printf("Enter the letter of your choice:\n");printf("a. avengers\tb. beep\n");printf("c. count\tq. quit\n");user_input = get_first_char(); } while ((user_input < 'a' || user_input > 'c') && user_input != 'q'); return user_input;}char get_first_char(void){int ch;ch = getchar();while (getchar() != '\n')continue;return ch;}int get_integer(void){int input;char c;while (scanf("%d", &input) != 1){while ((c = getchar()) != '\n')putchar(c);printf(" is not an integer.\nPlease try again.\n");printf("Enter an interger:\n");}return input;}
-
미해결장박사의 블록체인 이해와 구조
remix 이더리움 IDE 사용 관련 강좌가 없어요.
비트코인과 블록체인 구조 분석의 스마트컨트랙트 프로그래밍에서 갑자가 remix 이더리움 IDE가 나오는데...이와 관련된 이전 영상을 찾을 수가 없는데..혹시 영상 아니면 문서라도 있을까요?
-
해결됨HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌2)
이미지 전환 후 잔상 효과
안녕하세요! 시즌 1강의부터 시즌 2 강의까지 유익하게 잘 듣고 있습니다! 다름이 아니라 강의를 듣고 강사님께서 작성해주시는대로 코드는 똑같이 작성했는데 이미지 전환 후 화면 아래에 잔상이 생깁니다. 이것저것 써보다가 혹시나 하여 강의 영상도 확인해보니 영상에서도 아랫쪽에 잔상이 남아있습니다. (24:23초 부분) 혹시 이유가 있거나 해결하는 방법이 있을까요?!(코드는 영상과 똑같이 작성하였기에 첨부하지 않았습니다!)감사합니다!
-
미해결스프링 시큐리티
Ajax에서 진도를 못나가고 막혀 있습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. WebSecurityConfigurerAdapter Deprecated 되서 사용을 못하는데 이거에 대한 소스 코드 공유를 해주시면 안될까요?수업 따라가기가 벅찹니다. 돈을 주고 강의를 듣는데 이런 부분은 업데이트가 필요하다고 생각합니다.
-
미해결코딩테스트 [ ALL IN ONE ]
self.head를 변경하면 안되는 이유
안녕하세요🙂self.head를 직접 사용하지 않고 current라는 새로운 변수를 만들어 포인터를 이동시키는 이유에 대한 질문입니다.self.head는 LinkedList라는 인터페이스안의 다른 함수에서도 재사용해야 하므로 직접적으로 변경하면 안되기 때문에 그런건가요. 직관적으로 생각하면 LinkedList에 접근하기 위한 고정된 값으로 이해는 됩니다!!
-
미해결남박사의 파이썬으로 실전 웹사이트 만들기
구글 클라우드에서 static 폴더 경로 설정 문제
안녕하세요 좋은 강의 잘 듣고 있습니다 구글 클라우드에서 docker file을 실행했을때 static 폴더에 있는 image file 동영상 파일이 없다고 나오는데요 image 파일 동영상 파일을 불러오는(rendering하는) html 파일에서 static 폴더내 이미지 동영상 파일 경로를 어떻게 설정해야하는지 궁금합니다설명 부탁드립니다 감사합니다
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
PollSCM 설정을 통한 지속적인 파일 업데이트 강의 수강 중....
git clone 후 git commt 및 push 하면 당연히 권한이 없어서 안된다고 합니다. 이와 관련해서 안내가 되지 않은 듯 해서 질문드립니다...
-
미해결따라하며 배우는 TDD 개발 [2023.11 업데이트]
jest.fn() 을 할당할때 타입스크립트에서 에러가 발생합니다.
Typescript를 쓰면서 공부중입니다. productModel.create = jest.fn();위 코드를 할당할 때Cannot assign to 'findByUsername' because it is a read-only property.라는 컴파일 에러가 발생합니다...타입스크립트에서는 어떻게 할당하면 될까요 ?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
qql
qql에서 백틱 다음에 저는 문자열로 모든게 표현되는데, 강의 화면에서는 다르게 나오던데 어떤 익스텐션을 추가해야 되나요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
checkbox 진행과정 질문입니다.
먼저 사용자가 서울을 체크하면item의 private List<String> regions; 에 SEOUL 이 저장이됩니다.<div> <div>등록 지역</div> <div th:each="region : ${regions}" class="form-check form-check-inline"> <input type="checkbox" th:field="*{regions}" th:value="${region.key}" class="form-check-input"> <label th:for="${#ids.prev('regions')}" th:text="${region.value}" class="form-check-label">서울</label> </div> </div>그 다음 th:field="*{regions}" 에 SEOUL이 들어가게 되고,th:value="${region.key}" 에 있는 SEOUL, BUSAN, JEJU와 일치하는 지 비교합니다.만약 있다면 checked = "checked" 를 합니다. 위와 같은 흐름이 맞는 지 궁금합니다.답변 주시면 정말 감사하겠습니다.
-
미해결자바 코딩테스트 - it 대기업 유제
카드 가져가기를 sort로 풀게 되면,,, 시간복잡도가,,,,
안녕하세요, 이 문제의 파라미터 수가 30만개인데 이걸 nlogn 으로 풀면, 백준 기준으로는 타임 오바 되는 수준으로 알고 있는데 아닌가요?
-
해결됨Vue.js 시작하기 - Age of Vue.js
vue cli 설치 하는데 오류 해결을 못하고 있습니다.
node, npm 설치 잘 되여있는데 vue cli만 설치할려면 저런 오류가 뜹니다.cmd/cmder/powershell 들을 관리자 권한으로 실행해서 명령어를 쳐봐도 달라지는건 없었습니다.npm uninstall -g @vue/cli 하고 다시 명령어를 쳐도 똑같이 나옵니다powershell 권한 수정 그런것도 해보고 환경변수 설정도 다 해보고 Cmder.exe 도 다운받아서 npm install -g @vue/cli 명령어 치면 계속 오류만 뜹니다.해결방법을 알려주시면 감사하겠습니다..
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
cloudFront에 원본 프로토콜
원본 도메인을 적는 칸에 강의와는 다른 프로토콜 칸이 생겼습니다.해당 부분은 어떻게 진행하는 것인가요?++ 우선 뷰어 일치로 진행하였는데, 받은 주소가 자꾸 에러가 나네요.자물쇠는 걸렸지만 아래처럼 나옵니다!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
빌드 에러
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]여기에 질문 내용을 남겨주세요. 지금 학교에서 자바 8버전을 쓰고 있어서 8버전으로 ./gradlew build 를 했는데 오류가 뜨더군요 그래서 11버전을 깔아서 다시 스프링 프로젝트를 만드려고 하는데 또 학교에선 8버전을 사용하기때문에 두가지 모두 사용할 방법이 있는 지 궁금합니다.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
쿠키 공유 질문이요
제가 어디서부터 흐름이 끊겼는지 모르겠는데 우선 로컬에서 브라우저랑 백엔드서버가 쿠키공유를 할 때 origin이 서로 달라서 브라우저에서는 axios.defaults.withCredentials = true를 해주고 백엔드서버에서는 credentials: true 하고 origin: http://localhost:3060을해서 쿠키를 서로 공유했는데 배포 할 때도 백엔드서버에서 브라우저 ip주소를 origin에 적어주면 공유 되는 거 아닌가요? 왜 배포할 떄는 브라우저와 백엔드서버 origin이 서로 같아야 쿠키가 공유 되는 건가요?
-
미해결호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)
테스트코드 질문
안녕하세요 호돌맨님,!Service 계층 테스트코드와 MockMVC를 이용한 Controller 계층 테스트코드를 각각 작성하시는것 같은데, 이유가 있으신지요?, 저의 좁은 시야로는 Controller 테스트 실행시 Service 로직도 검증이 될것 같아서 질문을 드립니다.실무에서도 계층별(예를들어 Controller, Service, Repository)로 테스트코드를 각각 작성하시는 편이신가요?