묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨Typescript with Vue 실전 프로젝트
에러 표시 질문이요!
개발자 도구에서 보면 아래 사진과 같은 에러가 뜨는데 무슨 이유 인가요? import {Module, VuexModule, Mutation, Action} from 'vuex-module-decorators'; @Module({namespaced: true, name: 'moduleB'}) export default class ModuleB extends VuexModule { data: string = 'moduleB'; @Mutation setData(data: string){ this.data = data; } @Action editData(data: string) { this.context.commit('setData', data); } get moduleBdata(){ return this.data; } }
-
미해결인터랙티브 웹 개발 제대로 시작하기
rotate() 사용시 좌표 방향 기준
강사님 영상 재밌게 보고있습니다. 영상 07:10초쯤에서 오른쪽 측면용 벽 너비를 1000vw로 설정하고 z축으로 이동시켜주신다 하셨는데요. 저는 당연히 x축으로 이동시켜야 된다고 생각했는데, 이게 원리가 3d공간에서 rotate()시 요소의 좌표기준방향도 같이 회전되서 바뀌는 원리인가요?? API관련해서 mdn찾아봐도 관련내용은 쉽게 찾을수가없네용.. 혹시 3d관련해서 참고할 리소스 추천해주실 수 있으신가요? 감사합니당:)
-
미해결Typescript with Vue 실전 프로젝트
vuex-module-decorators 보다 오리지널 모듈 형태를 선호하시는 이유가 무엇이신가요?
안녕하세요!재밌게 잘 듣고 있습니다.vuex-module-decorators를 배우고 나니 기존 형태보다 더 편해 보이는데 오리지널 방식을 선호하시는 이유가 무엇인지 궁금합니다!
-
미해결스프링 부트 개념과 활용
TestRestTemplate 으로 getForOjbect 했을경우
안녕하세요. TestRestTemplate 으로 getForOjbect 했을경우 return 값이 json String 형식이라면 json의 값들을 확인하려면 어떤식으로 해야되나요? MockMvc 를 활용했을경우에는 jsonpath로 확인을 하던데.. TestRestTemplate 으로 해야 하는 경우라면 어떻게 확인해야 하는지 궁금합니다.
-
해결됨Typescript with Vue 실전 프로젝트
안녕하세요. 초기 셋팅시 질문있습니다.
초기셋팅에서 typescript 고른 후에 넘어가서 린트 설정하는 부분인데요. TSLint가 Duplicated 됐던데, 실제서비스에서는 어떤 걸 사용하나요? 본 동영상 강의는 그냥 TSLint로 해도 될 것 같긴 합니다만.. 실제 회사에서는 어떤걸 쓸지 궁금하네요..
-
미해결더 자바, 애플리케이션을 테스트하는 다양한 방법
lenient() 오류 관련
안녕하세요 기선님! 다름이 아니라 영상을 보던 중 오류가 발생하여 질문드립니다. 영상의 09:50 분에 when(memberService.findById(1L)).thenThrow(new RuntimeException()); 해당 코드를 코딩을 하면 하위의 오류가 발생합니다. Please remove unnecessary stubbings or use 'lenient' strictness. More info: javadoc for UnnecessaryStubbingException class. 구글링을 통해 lenient()를 사용하면 에러가 없어진다고 하던데 정말 그렇더군요 lenient().when(memberService.findById(1L)).thenThrow(new RuntimeException()); 위의 lenient() 가 어떤 역할을 하는지 알 수 있을까요?
-
미해결업무 자동화를 위한 파이썬 pyautogui, beautifulsoup 크롤링 기초
moveRel질문입니다
만약 moveRel을 이용하여 수동으로 좌클릭을 할때 만 작동하게 할수있나요.?
-
미해결스프링 프레임워크 핵심 기술
messageSource cache 질문드립니다.
- 죄송합니다. 질문이 잘 못 된 것 같아 다시 드립니다. (원래 적었던 질문은 지웠습니다...) setCacheSeconds 설명을 보면, 설정된 interval 로 properties를 refresh 하는 것으로 이해 했습니다. public void setCacheSeconds(int cacheSeconds) Set the number of seconds to cache loaded properties files. Default is "-1", indicating to cache forever (just like java.util.ResourceBundle). A positive number will cache loaded properties files for the given number of seconds. This is essentially the interval between refresh checks. Note that a refresh attempt will first check the last-modified timestamp of the file before actually reloading it; so if files don't change, this interval can be set rather low, as refresh attempts will not actually reload. 그런데, 아래 부분에서 3초로 설정해도 application 실행 중에는 properties 파일을 변경하여도 print 되는 properties 는 변경이 없었습니다. @BeanMessageSource messageSource() { var messageSource = new ReloadableResourceBundleMessageSource(); messageSource.setBasename("classpath:/messages"); messageSource.setDefaultEncoding("utf-8"); messageSource.setCacheSeconds(3); return messageSource;} 혹시 제가 잘못 이해한 부분이 있는지 알려주시면 감사하겠습니다.
-
미해결선형대수학개론
헷갈리는 부분이 있습니다.
어쩔때는 R^m 이고 어쩔때는 R^n인데 차이점이 뭔가요?
-
미해결스프링 부트 개념과 활용
선행학습 질문드립니다.
안녕하세요. 현재 스프링 프레임워크 시중에 나와있는 책으로 공부하고 있는 학생입니다. 아무래도 책으로 공부하다보니 학습진행이 더딘 부분이 있어 검색하던 중 강사님 강의를 알게 되었고, 강사님의 입문 강의 본 후 스프링 부트 강의를 결제하였습니다. 본론만 말씀드리자면, 제가 현재 프레임워크를 다 배운 상태도 아니고, MVC 기본구조 화면처리, 페이징/검색처리, REST 방식과 Ajax를 이용한 댓글 처리정도까지만 학습한 상태입니다. 제가 알기론 통상적으로 프레임워크를 먼저 배우고 난 후에 스프링부트를 배워야 한다고 들었는데, 강사님의 강의 소개부분에서는 스프링 부트를 사용하면서 프레임워크를 학습하는 사람들이 많다고 하시더라구요. 저의 현 상태에서 부트강의 듣고 핵심기술 강의로 넘어가도 될런지요? 아니면, 개인적으로 보던 책을 마저 마치고 스프링부트 강의를 들어야 할지 판단이 안서네요. 지금 제가 급하게 스프링 프레임워크와 스프링부트까지 마무리 해야 하는 상황이라 글 남깁니다. 바쁘신 가운데 글 읽어주셔서 감사드리고 답변 기다리겠습니다. 감사합니다.
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
print() 를 하면 콘솔창에 공백이 아니라 ()가 출력됩니다
콘솔창의 가독성을 위해 print()로 한칸씩 띄우며 출력하려는데 인풋에 print()를 입력하면 아웃풋에 공백이 아니라 () <-이게 출력됩니다. 왜 그런걸까요... Atom 입니다
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
import graphviz
안녕하세요. 환경변수 path를 강의와 같이 추가 한뒤 소스코드를 진행 중인데요. import graphviz를 선언할 때, No module named 'graphviz' Error 가 발생하는데 혹시 제가 놓친 부분이 있을까요?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
DTO를 반대로 엔티티로 변환하는 경우에 대해 질문 드립니다.
안녕하세요. SpringBoot와 JPA를 활용해 개인적인 프로젝트를 진행중에 있습니다. DTO를 엔티티로 만들기위해 처음에 서비스계층에서 작성하다보니 코드가 많아지는거 같아 요청받은 DTO에서 바로 엔티티로 바꾸는 메서드를 만드려고 했습니다. 엔티티사이에 연관관계가 있다보니 DTO에 Repository를 이용하여 연관관계의 엔티티를 불러와야 하는데 DTO에서 Repository의존성을 받아서 DTO를 엔티티로 작성하는 메서드를 작성해도 되는지 안된다면 어떤 문제때문에 그렇게 구현하면 안되는지에 대해 궁금합니다.
-
미해결화이트해커가 되기 위한 모의해킹 완전 정복
몇가지 안되는 것들
강의 감사합니다. 현재 20강까지 따라가고 있는데, 몇군데서 안되는 것을 해결하지 못하겠네요. 16강, windows7 설치하고 나서, slmail이나 java old version 등 설치하는데, google에서 검색은 잘 되는데 exploit-db 의 화면은 안뜨고, old-version list 에서 download는 실패네요. 원인을 못 찾게습니다. kali linux command 중 find 를 수행한 결과는 '허가 거부' 가 뜹니다. 해결 좀 부탁드려요. 그리고, 여기 질문 입력 창이 이상하네요. 앞에 친 글자를 불규칙하게 잡아먹네요…
-
미해결Vue로 Nodebird SNS 만들기
500로 회원가입이 되지 않습니다.
안녕하세요. 현재 백엔드 서버, 프론드서버를 모두 npm run dev로 킨 상태입니다. 또한 msSQL 도 running을 확인했습니다. workbench를 통해 user 테이블이 생성된 것 까지 확인된 상태입니다. 회원가입을 하게 되면, terminal 창에 아래와 같은 500에러가 발생합니다. 백엔드에서도 console.log로 이메일, 패스워드를 찍었는데, undefined가 되어있어서 데이터가 안 넘어가는 상태로 생각하고 있습니다. (프론트에서는 payload에 값이 다 잘 들어있습니다.) 무엇이 문제인지 알고싶습니다. Executing (default): SELECT `id`, `email`, `nickname`, `password`, `createdAt`, `updatedAt` FROM `Users` AS `User` WHERE `User`.`email` = 'dog@dog.dog'; { SequelizeValidationError: notNull Violation: User.email cannot be null, notNull Violation: User.nickname cannot be null, notNull Violation: User.password cannot be null name: 'SequelizeValidationError',
-
미해결함수형 프로그래밍과 JavaScript ES6+
a.then()을 return 하는 이유가 뭐고 어떻게 동작하는 건가요?
5:18 쯤에 return a.then()을 작성하시는데 여기서 a.then을 왜 return 하는지 모르겠어요. if (a instanceof Promise) { a.then(a => { res.push(a); if (res.length == l) return res; } } else { res.push(a); if (res.length == l) return res; } 그냥 이렇게 작성하면 안 되는 건가요? 그 뒤에 재귀함수로 작성하기 위해서 그런 건가요? 그리고 재귀함수에서 동작이 이해가 안 가는 게 있는데 재귀함수 recur() 안에서 return a.then()을 하면 결국 Promise를 반환하는 거니깐 거기서 재귀가 끝나게 되는 거 아닌가요? a.then() 안에서 recur()를 호출한다 하더라도 처음에 실행했던 recur()와는 별개로 동작하는 것처럼 보이는데 실행 흐름이 어떻게 되는지 궁금합니다. 제 생각에는 만약 take에 넘어오는 이터러블이 [Promise.resolve(1), Promise.resolve(2), Promise.resolve(3)]이고, take(2)를 했을 때, 재귀를 다 돌고 최종적으로 return 되는 값이 Promise.resolve(1).then(() => Promise.resolve(2).then(() => [1, 2])) 이런 식으로 될 것 같은데 이게 맞나요?
-
미해결프로그래밍, 데이터 과학을 위한 파이썬 입문
아톰오류
D:\workspace\python_mooc\lab_1_windows\windows>atom arithmetic_function.py 'atom'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 아톰오류라서 첫번째과제부터 힘들어요 뭐가 문제인걸까요? D:\workspace\python_mooc\lab_1_windows\windows>python Python 3.7.4 (default, Aug 9 2019, 18:34:13) [MSC v.1915 64 bit (AMD64)] :: Anaconda, Inc. on win32 Warning: This Python interpreter is in a conda environment, but the environment has not been activated. Libraries may fail to load. To activate this environment please see https://conda.io/activation Type "help", "copyright", "credits" or "license" for more information. >>> import arithmetic_funcion Traceback (most recent call last): File "<stdin>", line 1, in <module> ModuleNotFoundError: No module named 'arithmetic_funcion' >>> arithmetic_function.addition(5,8) Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'arithmetic_function' is not defined 이런거만 자꾸 뜨는데 아예 모르겠어요 ㅠㅠ
-
해결됨웹 게임을 만들며 배우는 자바스크립트
문자에 .을 붙이면
따로 브라우저에 저장되있는 length같은 함수들(브라우저 개발자가 만든 여러 함수가 포함된 문자를 인식하는 객체)과 '안녕하세요'라는 '값'을 합치는건가요? '안녕하세요'+문자객체 그렇게 이걸 객체로 만드는거고 문자 인식은 ' '로 할 것 같은데 와 이거를 음.. 아스키코드? 로.. 아니 정말 궁금한게 이렇게 console.log처럼 개발자들이 만들어 놓은 함수는 도대체 어떻게 만드는 것인가요? ' '를 어떻게 인식하게 할 지, 또 그 문자의 끝을 어떻게 인식하게 할 것인지 정말 상상이 안가요. 언어 개발자들은 어셈블리어 집합을 묶어서 기능과 함수들로 만들은거 같은데 혹시 간략하게나마라도 설명해주실 수 있나요? 그리고 var 문자객체 = { repeat1: function repeat2(num){ } } 이렇게 하면 문자객체.repeat1 이것은 repeat1을 불러와서 repeat1 속에 있는 repeat2 함수를 꺼내는건데 var 문자객체 = { repeat1(num): function repeat2(num){ } } 이런식으로 따로 인자자리를 마련해준것도 아닌데 문자객체.repeat1(num) 하면 어떻게 알아차리는지 궁금해요. 그리고 num같은 경우 뭐가와도 상관없다고 예전 강의 영상에서 들었던거 같은데, 이거를 var num이라고 이해해도 될까요? for문처럼 딱 쓰고 사라지는 변수 처럼요. 그리고 혹여나 제가 질문할 때 불편한 점이 있으신가요? 앞으로 더 많이 질문할텐데 불편하신 점이 있으시다면 그 점을 참고하고 싶어요. 인프라 분들께서 어떤 식으로 인센티브를 주시는지는 모르겠지만, 저에게 있어서 이거는 재능 기부기 때문에 불편하신 점을 참고하고 자주 질문하고 싶어요
-
미해결홍정모의 따라하며 배우는 C++
[04:58] 연습문제 9-> 0, 0->9 로 돌아가게 하는 법
안녕하세요. 연습문제 풀어봤습니다. 9에서 ++ 하면 0이 되게 하는 부분은 m_digit == 9 일 때는 그냥 m_digit에 0을 대입 했습니다. <코드> Digit& Digit::operator ++ () { if (m_digit == 9) { m_digit = 0; } else { ++m_digit; } return *this; } Digit& Digit::operator -- () { if (m_digit == 0) { m_digit = 9; } else { --m_digit; } return *this; } Digit Digit::operator ++ (int) { Digit temp(m_digit); // m_digit++; ++(*this); return temp; } Digit Digit::operator -- (int) { Digit temp(m_digit); // m_digit++; --(*this); return temp; } <출력> PS C:\coding\tbcpp_review\Chapter9> .\a.exe prefix --0 9 9 prefix ++9 0 0 postfix 0-- 0 9 postfix 9++ 9 0 <전체코드> #include <iostream> using namespace std; class Digit { private: int m_digit; public: Digit(int digit = 0) : m_digit(digit) {} // prefix Digit& operator ++ (); Digit& operator -- (); // postfix Digit operator ++ (int); Digit operator -- (int); friend ostream& operator << (ostream& out, const Digit &digit) { out << digit.m_digit; return out; } }; Digit& Digit::operator ++ () { if (m_digit == 9) { m_digit = 0; } else { ++m_digit; } return *this; } Digit& Digit::operator -- () { if (m_digit == 0) { m_digit = 9; } else { --m_digit; } return *this; } Digit Digit::operator ++ (int) { Digit temp(m_digit); // m_digit++; ++(*this); return temp; } Digit Digit::operator -- (int) { Digit temp(m_digit); // m_digit++; --(*this); return temp; } int main() { Digit digit1(0); Digit digit2(9); Digit digit3(0); Digit digit4(9); cout << "prefix --0" << endl; cout << "--digit1(0) : " << --digit1 << endl; cout << "digit1(0) : " << digit1 << endl; cout << "prefix ++9" << endl; cout << ++digit2 << endl; cout << digit2 << endl; cout << "postfix 0--" << endl; cout << digit3-- << endl; cout << digit3 << endl; cout << "postfix 9++" << endl; cout << digit4++ << endl; cout << digit4 << endl; return 0; } 감사합니다.
-
미해결홍정모의 따라하며 배우는 C++
[ rlatjrfo57님 질문 답변] 전위연산에서 ++(*this)를 사용한 부분
안녕하세요. 저도 비슷한 진도를 나가고 있습니다. 도움이 될까 해서 남겨봅니다. //postfix Digit operator ++ (int) { Digit temp(m_digit); // m_digit++; ++(*this); return temp; } 후위 연산자에서 ++(*this) 이 부분은 이미 전위연산자 오버로딩을 해놓은 상태라 그걸 활용한 부분이라고 설명하고 있습니다. 전위연산자 에서 ++(*this)를 해도 값이 올라가지 않는 ++연산자가 오버로딩이 안 되어 있어서 그렇습니다. ++(m_digit) 에서 m_digit은 멤버변수 ++(*this) 에서 *this는 자기자신의 포인터를 dereferencing 한 것, 즉 객체이기 때문입니다. 감사합니다.