묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
[Create 함수로 새로운 데이터 생성하기] create() 함수 질문
안녕하세요 선생님흐름에는 진짜 전-혀 지장없는데 궁금한 게 하나 생겨서 여쭤봐요 포스트 만들 때여기서 repository.create() 에 툴팁을 올리면 엔티티를 DeepPartial로 받더라구요.근데 이러면 필수 정보를 빠트려도 컴파일 단계에서 알아챌 도리가 없게 되는 거 아닌가? 이게 궁금했어요. 자동완성 기능을 제공해주긴 하지만, 직접 객체를 만들어서 save() 에 넣는 게 더 나은(적어도 안전한) 선택 아닌지제가 아직 TDD를 경험해보지 못해 이 부분이 궁금했슴미다... 에러내기도 힘든 초보적인 구역이지만 정신줄을 종종 놓고 살아서요ㅠ
-
해결됨Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
state 와 v-model에 대해서 질문이 있습니다.
강의 내용 TodoInput.vue 파일 중<input type="text" v-model="newTodoItem" v-on:keyup.enter="addTodo">부분에 v-model="newTodoItem" 을 사용하였습니다.이는 data 속성에 사용되었는데<input v-model="newTodoItem">computed:{ ...mapState(['newTodoItem'])}다음과 같은 느낌으로 v-model은 왜 state를 사용하지 않는 이유가 따로 있는지 궁금합니다!개인적으로 실험해봤을 때는 readonly로만 사용하라고 되어있는데 스택오버플로에선 사용한 사람도 있는 것 같기도 하고 무엇이 맞는지 궁금해용
-
해결됨[코드캠프] 훈훈한 Javascript
JS로 HTML. CSS 조작
18:00 부분에서 왜 변수로 안하고 객체로 하는 게 더 효율성이 좋은 건가요? 유지보수 때문인가여...???
-
해결됨[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
문법
이강의보면 문법은 더 공부할필요가 없나요 ???
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
배열에 for of, 객체에 for in이라고 생각하다가 문자열에 for of 너무 좋군요
감사합니다.function solution(question) { let answer = 0; for (const x of question) { if (x === x.toUpperCase()) answer++; } return answer; } console.log(solution("KoreaTimeGood"));
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
제가 풀던 방식과 이전에 배운 for of를 이용해서 두가지 방법으로 풀어보았습니다
감사합니다.function solution2(question, word) { let i = 0; for (const x of question) { if (x === word) i++; } return i; } function solution(question, word) { return question.split(word).length - 1; } console.log(solution("COMPUTERPROGRAMMING", "R")); console.log(solution2("COMPUTERPROGRAMMING", "R"));
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
특정 단어를 기준으로 split으로 자르고 join으로 다시 붙여서 풀었습니다
감사합니다.function solution(question) { return question.split("A").join("#"); } console.log(solution("BANANA")); console.log(solution("AATTNK")); console.log(solution("AJUERHNHANLDJFMNKAMMJKDJKFAMMKA"));
-
미해결함수형 프로그래밍과 JavaScript ES6+
Identity 함수
ES5, ES6 강의 모두 들었는데요.. Identity 함수에 대한 설명을 들었던게 기억이 나는데 이 함수에 대한 강의가 어디있는지 기억이 안납니다. 어떤강의 어떤 주제에서 Identity 함수에 대한 설명을 하셨나요?
-
해결됨웹 프론트엔드를 위한 자바스크립트 첫걸음
디지털시계 개발하기
🚨질문 작성법 및 안내사항질문 작성법- 몇 섹션의 어떠한 강의에 대한 질문인지 작성해주세요. (ex. 섹션2 조건문에 대한 질문)- 질문은 최대한 구체적으로 작성해주세요.- 비슷한 질문이 올라와있는지 확인해주세요.- 코드가 포함된 질문은 아래와 같이 코드블록을 사용해주세요.console.log("hello world");안내사항- 질문에 대한 답변은 보통 주말, 공휴일을 제외한 평일 오전 시간에 답변해드립니다. 디지털 시계 개발하기에서 5:41초 강의에서 parseInt(number)는 명시적 형변환 아닌가요? 묵시적 형변환이라고 강의에서 말씀하시네요
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
섹션 8 에서 도커 컴포스파일 작성해보기 에서 에러
안녕하세요docker-compose up 명령어를 입력했을 때 에러가 나왔습니다에러 내용joy@gimjonghuiui-MacBookAir CF_SNS % docker-compose upAttaching to cf_sns-postgres-1Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting "/host_mnt/Users/joy/Documents/NestJs/CF_SNS/postgres-data" to rootfs at "/var/lib/postgresql/data": mount /host_mnt/Users/joy/Documents/NestJs/CF_SNS/postgres-data:/var/lib/postgresql/data (via /proc/self/fd/9), flags: 0x5000: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type 위에 내용이 뜨면서 실행이 안되는것 같습니다postgres-data 관련 파일도 새롭게 만들어지지 않았습니다어떻게 해결하면 좋을까요..?
-
해결됨[코드캠프] 훈훈한 Javascript
조건에 따른 메시지 출력 강의
7:49 부분에 강사님은 NaN이 한 번만 출력되는데 저는 NaN NaN NaN NaN 총 네 번이 출력되는데 괜찮나요...? <!DOCTYPE html> <html lang="ko"> <head> <title>D-Day</title> <link rel="stylesheet" href="./style.css" /> <script> const dateForMaker = function () { // HTML에서 입력된 연도 값을 가져와서 inputYear 변수에 저장 const inputYear = document.querySelector("#target-year-input").value; // HTML에서 입력된 월 값을 가져와서 inputMonth 변수에 저장 const inputMonth = document.querySelector("#target-month-input").value; // HTML에서 입력된 날짜 값을 가져와서 inputDate 변수에 저장 const inputDate = document.querySelector("#target-date-input").value; // 연도, 월, 날짜를 하이픈으로 연결하여 날짜 형식 문자열 생성 // const dateFormat = inputYear + "-" + inputMonth + "-" + inputDate; const dateFormat = `${inputYear}-${inputMonth}-${inputDate}`; // 생성된 날짜 형식 문자열을 반환 return dateFormat; // console.log(inputYear, inputMonth, inputDate); }; const counterMaker = function () { const targeDateInput = dateForMaker(); // 현재 시간 const nowDate = new Date(); // 대상 날짜를 생성하고 시, 분, 초, 밀리초를 0으로 설정 const targetDate = new Date(targeDateInput).setHours(0, 0, 0, 0); // emaining = 남은 시간을 초로 환산 // 밀리초를 초로 변환하기 위해 1000을 나눔 const remaining = (targetDate - nowDate) / 1000; console.log(targetDate); // remaining이 0보다 작으면 즉, 타이머가 종료된다면 if (remaining <= 0) { // "타이머가 종료되었습니다." 출력 console.log("타이머가 종료되었습니다."); // 만약 잘못된 날짜가 들어왔다면 "유효한 시간대가 아닙니다." 출력 } else if (remaining === NaN) { console.log("유효한 시간대가 아닙니다."); } // 'remaining' 값을 3600(초당 시간)과 24(시간당 일)로 나눈 후 정수 부분을 남은 일수로 저장 const remainingDate = Math.floor(remaining / 3600 / 24); // 'remaining' 값을 3600(초당 시간)으로 나눈 후 24(시간)로 나눈 나머지를 남은 시간(시)으로 저장 const remainingHours = Math.floor(remaining / 3600) % 24; // 'remaining' 값을 60(초당 분)으로 나눈 후 60(분)으로 나눈 나머지를 남은 분으로 저장 const remainingMin = Math.floor(remaining / 60) % 60; // 'remaining' 값을 60(초)으로 나눈 후 60(초)으로 나눈 나머지를 남은 초로 저장 const remainingSec = Math.floor(remaining) % 60; // 남은 일, 시간, 분, 초를 콘솔에 출력 console.log(remainingDate, remainingHours, remainingMin, remainingSec); }; </script> </head> <body> <h1>D-Day</h1> <div id="d-day-container"> <div class="d-day-child-container"> <span id="days">0</span> <span>일</span> </div> <div class="d-day-child-container"> <span id="hours">0</span> <span>시간</span> </div> <div class="d-day-child-container"> <span id="min">0</span> <span>분</span> </div> <div class="d-day-child-container"> <span id="sec">0</span> <span>초</span> </div> </div> <div id="target-selector"> <!-- 연도를 입력받는 입력란. 'id'는 "target-year-input"이며 CSS 클래스는 "target-input"입니다. --> <input id="target-year-input" class="target-input" size="5" /> - <!-- 월을 입력받는 입력란. 'id'는 "target-month-input"이며 CSS 클래스는 "target-input"입니다. --> <input id="target-month-input" class="target-input" size="5" /> - <!-- 날짜를 입력받는 입력란. 'id'는 "target-date-input"이며 CSS 클래스는 "target-input"입니다. --> <input id="target-date-input" class="target-input" size="5" /> </div> <button onclick="counterMaker()" id="start-btn">카운트다운 시작</button> </body> </html>
-
미해결SCSS(SASS)+FLEX 실전 반응형 웹 프로젝트 with Figma
scss 히스토리 파일
style.scss가 사진처럼 여러 파일로 히스토리가 남게 저장됩니다. 삭제를 해도 watch css를 하면 다시 파일이 만들어지는데.. 아예 히스토리 안남게 하는 방법이 있을까요 ?
-
미해결입문자를 위한 반응형 웹 기초 강의
max-width에 관해서
안녕하세요 강사님, <div id='parents'> <div id='child'></div> </div>여기서 이 밑 두 코드의 차이점을 알 수 있을까요?<style> #parents { width: 50%; } #child { max-width: 100%; } </style><style> #parents { width: 50%; } #child { width: 100%; } </style>
-
해결됨웹 애니메이션을 위한 GSAP 가이드 Part.02
gsap.set() vs gsap.default()
gsap.set(), gsap.default() 두 가지 모두트윈의 값을 미리 셋팅하는 역할을 하는데 어떤 상황에서 어떤 것을 사용해야할지 감이 잡히지 않습니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
핸드폰에 전송이 안 되네요 ㅜㅜ
강의랑 똑같이 따라한 것 같은데.. postman에서는 오류가 발생하지 않고 인증완료라고 뜨긴 하는데요,vscode의 터미널을 보면 발신번호 미등록이라고 뜨고 .. 핸드폰에 전송이 안 되네요.뭐가 문제일까요? coolsms, mysms, API key랑 API secret도 cSpell 오류가 뜨길래 상위 폴더에서 .cspell.json 파일 만들어서 오류 안뜨게 했는데.. 여기서부터 문제였던 걸까요? 참고로 yarn add coolsms-node-sdk도 했고.. 분명 다 한 것 같은데ㅜ 어디서부터 잘못된건지 정말 모르겠어요..혹시 제가 코드 이상하게 작성하거나 잘못된 부분이 있나 해서.. 코드도 붙여봅니다 ㅜㅜ꼭 성공하고 싶은데 제가 아직 코린이라 ㅜㅜ 다 어렵기만 하네요 ㅜㅜ { "name": "04-01-rest-api-with-express", "version": "1.0.0", "main": "index.js", "license": "MIT", "type": "module", "scripts": { "dev": "nodemon index.js" }, "dependencies": { "coolsms-node-sdk": "^2.0.1", "cors": "^2.8.5", "express": "^4.18.2", "nodemon": "^3.0.1", "swagger-jsdoc": "^6.2.8", "swagger-ui-express": "^5.0.0" } } import coolsms from "coolsms-node-sdk"; export function checkValidationPhone(myPhone) { if (myPhone.length !== 10 && myPhone.length !== 11) { console.log("에러 발생!!! 핸드폰 번호를 제대로 입력해 주세요!!!"); return false; } else { return true; } } export function getToken() { const myCount = 6; if (myCount === undefined) { console.log("에러 발생!!! 갯수를 제대로 입력해 주세요!!!"); return; } else if (myCount <= 0) { console.log("에러 발생!!! 갯수가 너무 적습니다!!!"); return; } else if (myCount > 10) { console.log("에러 발생!!! 갯수가 너무 많습니다!!!"); return; } const result = String(Math.floor(Math.random() * 10 ** myCount)).padStart( myCount, "0" ); return result; // console.log(result) } export async function sendTokenToSMS(fff, ggg) { // console.log(fff + "번호로 인증번호" + ggg + "를 전송합니다!!"); const mysms = coolsms.default; const messageService = new mysms( "NCSESSQG0X1RZAGF", "2OFMQEDM5YCL59ICURBSPJGD08R1FQOG" ); const result = await messageService.sendOne({ to: fff, from: ggg, text: `[코드캠프] 안녕하세요?! 요청하신 인증번호는 [${ggg}] 입니다.`, }); console.log(result); } import { checkValidationPhone, getToken, sendTokenToSMS } from "./phone.js"; import express from "express"; import swaggerUi from "swagger-ui-express"; import swaggerJsdoc from "swagger-jsdoc"; import { options } from "./swagger/config.js"; import cors from "cors"; const app = express(); app.use(cors()); app.use(express.json()); app.use("/api-docs", swaggerUi.serve, swaggerUi.setup(swaggerJsdoc(options))); app.get("/boards", (req, res) => { //1. 데이터를 조회하는 로직 => DB에 접속해서 데이터 꺼내오기 const result = [ { number: 1, writer: "철수", title: "제목1", contents: "내용1" }, { number: 2, writer: "맹구", title: "제목2", contents: "내용2" }, { number: 3, writer: "훈이", title: "제목3", contents: "내용3" }, ]; //2. 꺼내온 결과 응답 주기 res.send(result); }); app.post("/boards", (req, res) => { // 1. 데이터를 등록하는 로직 => DB에 접속해서 데이터 저장하기 // 프론트엔드로부터 데이터 받아오기 // 콘솔로 찍어서 확인 해보기 console.log(req.body); // 2. 저장 결과 알려주기 res.send("게시물 등록에 성공하였습니다."); }); app.post("/tokens/phone", (req, res) => { const myPhone = req.body.aaa; // 1. 휴대폰번호 자릿수 맞는지 확인하기 const isValid = checkValidationPhone(myPhone); if (isValid) { // 2. 핸드폰 토큰 6자리 만들기 const myToken = getToken(); // 3. 핸드폰번호에 토큰 전송하기 sendTokenToSMS(myPhone, myToken); res.send("인증완료"); } }); app.listen(3000, () => { console.log(`Example app listening on port ${3000}`); });
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
TypeORM @PrimaryGeneratedColumn 관련 질문
@PrimaryGeneratedColumn() 데코레이터에 인자로 전달할 수 있는increment와 identity에 따라서 어떤 차이가 있는지 궁금합니다.찾아봐도 알기가 어려워서 질문드립니다.
-
해결됨[코드캠프] 훈훈한 Javascript
locallhost
제 창 주소는 이렇게 뜨는데 왜 강사님은 다르게 뜨는 건가요 로컬호스트 강의 0:40 부분
-
미해결[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
nestjs와 프론트 연동 질문드립니다.
nestjs랑 nextjs를 사용하여 로그인 기능을 만들고 있습니다.nestjs의 validation을 사용해서 @IsEmail이 아닌 경우 예외처리를 하게 만들어주었습니다. postman에서는 message가 잘 뜨는데 프론트엔드에서 console.log(error)로 찍어보면 postman에서 response으로 받은 값이 없습니다. 프론트에서도 postman처럼 response값을 받으려면 어떻게 해야하나요? <프론트> <서버> <dto> <postman> <브라우저>
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
파트2 강의도 출시되나요??
궁금합니다
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
css질문
display:flex가 없어도 위치가 똑같은부분에 왜display:flex;flex-direction:column; or flex-direction:row를 왜 쓰는지모르겠어요 안써도 위치가같아보이는데필요성도 안느껴지고 언제언제쓰는지도 잘 모르겠습니다