묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
포인터 사용하는 이유가 궁금합니다.
안녕하세요 강사님! 강의 잘 듣고 있습니다~ 강의를 듣기 전 혼자 풀어본 것과 강사님 방법이 조금 달라 궁금한게 생겨 질문 드립니다. 저는 sliding window만 사용하여 문제를 해결했는데 강의에서는 포인터도 함께 사용하더라구요! 혹시 포인터를 함께 활용하는 게 더 좋은 이유가 있을까요?
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
value 값의 의미
안녕하세요! 실습하다 궁금하게 생겨 질문 남깁니다.제가 생각하기로는 checked 가 true인 경우 체크 상태가 되는 것으로 생각했는데요.checked가 어떤 값이라도 맨 처음 렌더링 되는 경우 체크 상태가 되지 않고 체크 때마다 boolean 값이 반대가 되는 것을 확인했는데요. (즉, value가 false여도 체크 됨.) <template> <check-box v-model="checked"></check-box> </template> <script> import CheckBox from "./components/CheckBox.vue"; export default { components: { CheckBox, }, data() { return { checked: true, }; }, }; </script> <template> <div> <input type="checkbox" :value="value" @click="toggleCheckBox" /> </div> </template> <script> export default { // @input 이벤트 // :value 값 props: ["value"], methods: { toggleCheckBox() { this.$emit("input", !this.value); }, }, }; </script> 왜 이런건가요? 결국 value 값 상관없이 값이 변화되면 반대 상태가 되는 건가요?
-
미해결만들면서 배우는 리액트 : 기초
react 책을 추천 해주신다면요...?
강의 잘 듣고 있습니다. 혹시 react 개발 관련 책을 추천 해주신다면 어떤 걸 추천 하실까요?
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
Vuex Store getters 사용법 관련
장기효님 안녕하세요.수강 중 Vuex Store getters 관련하여 궁금한 점이 생겨 문의 드립니다. 강의에서 getters 를 아래와 같이 사용하셨는데요 export const store = new Vuex.Store({ state: { news: [], jobs: [], asks: [], userInfo: {}, itemInfo: [], }, getters: { fetchedAsk(state) { return state.ask; }, fetchedItem(state) { return state.item; }, }, mutations, actions, }); state의 값을 그대로 가져오는 경우에도 getters를 사용하는 게 좋은 건가요? 아래와 같이 computed 통해서 접근하는 것보다 getters로 사용하는 하는 것이 좋은 방향인지 궁금하여 문의 드립니다. computed: { userInfo() { return this.$store.state.userInfo; } } 감사합니다 !
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
setTimeout함수를 수업과 똑같이 치고 엔터를 치니 ->2478 이라는게 뜨는데 이건 무슨의미인가요?
다른 수강생분들에게도 문제 해결에 도움을 줄 수 있도록 좋은 질문을 남겨봅시다 :) 1. 질문은 문제 상황을 최대한 표현해주세요.2. 구체적이고 최대한 맥락을 알려줄 수 있도록 질문을 남겨 주실수록 좋습니다. 그렇지 않으면 답변을 얻는데 시간이 오래걸릴 수 있습니다 ㅠㅠex) A라는 상황에서 B라는 문제가 있었고 이에 C라는 시도를 해봤는데 되지 않았다!3. 먼저 유사한 질문이 있었는지 꼭 검색해주세요!
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
onCreate is not a function 에러
안녕하세요 이정환 강사님! 강의 정말 잘 듣고 따라서 열심히 만들고 있습니다 다름이 아니라 강사님 강의를 보고 따라서 만들다가 오류를 만났는데 오류 잡기가 너무 어려워서 질문 남겨요. 강의 39분 부터 시작되는 작성완료 부분에서 글을 쓰고 작성완료를 누르면 홈으로 이동은 하는데 글이 등록이 되지 않습니다 제가 작성한 오류 관련 부분 DiaryEditor.js, App.js 코드 남겨드립니다 DiaryEditor.js import { useNavigate } from "react-router-dom"; import { useContext, useRef, useState } from "react"; import { DiaryDispatchContext } from "./../App.js"; import MyHeader from "./MyHeader"; import MyButton from "./MyButton"; import EmotionItem from "./EmotionItem"; const emotionList = [ { emotion_id: 1, emotion_img: process.env.PUBLIC_URL + `/assets/emotion1.png`, emotion_descript: "best", }, { emotion_id: 2, emotion_img: process.env.PUBLIC_URL + `/assets/emotion2.png`, emotion_descript: "good", }, { emotion_id: 3, emotion_img: process.env.PUBLIC_URL + `/assets/emotion3.png`, emotion_descript: "not bad", }, { emotion_id: 4, emotion_img: process.env.PUBLIC_URL + `/assets/emotion4.png`, emotion_descript: "bad", }, { emotion_id: 5, emotion_img: process.env.PUBLIC_URL + `/assets/emotion5.png`, emotion_descript: "worst", }, ]; const getStringDate = (date) => { return date.toISOString().slice(0, 10); }; const DiaryEditor = () => { const contentRef = useRef(); // 오늘의 일기를 state에 mapping 하기 위한 state const [content, setContent] = useState(""); // 어떤 감정을 선택했는지 저장할 state const [emotion, setEmotion] = useState(3); const [date, setDate] = useState(getStringDate(new Date())); const { onCreate } = useContext(DiaryDispatchContext); // emotion을 클릭하면 수행할 함수 const handleClickEmote = (emotion) => { setEmotion(emotion); }; const navigate = useNavigate(); //작성완료 버튼의 기능 const handleSubmit = () => { if (content.length < 1) { contentRef.current.focus(); return; } //context length가 적절한 길이가 되었을때 onCreate 함수를 호출 onCreate(date, content, emotion); navigate("/", { replace: true }); }; return ( <div className="DiaryEditor"> <MyHeader headText={"write a diary"} leftChild={<MyButton text={"< back"} onClick={() => navigate(-1)} />} /> <div> {/* 역할은 div와 동일한데 이름만 다르다 */} <section> <h4>Date</h4> <div className="input_box"> {/* 날자 선택이 가능한 html 태그 */} <input value={date} onChange={(e) => setDate(e.target.value)} className="input_date" type="date" /> </div> </section> <section> <h4>Feeling</h4> <div className="input_box emotion_list_wrapper"> {emotionList.map((it) => ( <EmotionItem key={it.emotion_id} {...it} onClick={handleClickEmote} //emotion감정이 선택된 감정인지 아닌지를 알게하기 위한 prop // 선택된 emotion의 값과 같은 emtion = true, 같지 않은 emotion = false isSelected={it.emotion_id === emotion} /> ))} </div> </section> <section> <div className="input_box text_wrapper"> <textarea placeholder="How was your day?" ref={contentRef} value={content} onChange={(e) => setContent(e.target.value)} ></textarea> </div> </section> <section> <div className="control-box"> <MyButton text={"save"} type={"positive"} onClick={handleSubmit} /> </div> </section> </div> </div> ); }; export default DiaryEditor; App.js import React, { useReducer, useRef } from "react"; import "./App.css"; import { BrowserRouter, Route, Routes } from "react-router-dom"; import Home from "./pages/Home"; import New from "./pages/New"; import Edit from "./pages/Edit"; import Diary from "./pages/Diary"; const reducer = (state, action) => { let newState = []; switch (action.type) { case "INIT": { return action.data; } case "CREATE": { newState = [action.data, ...state]; break; } case "REMOVE": { newState = state.filter((it) => it.id !== action.targetId); break; } case "EDIT": { newState = state.map((it) => it.id === action.data.id ? { ...action.data, } : it ); break; } default: return state; } return newState; }; export const DiaryStateContext = React.createContext(); export const DiaryDispatchContext = React.createContext(); const dummyData = [ { id: 1, emotion: 1, content: "오늘의일기 1번", date: 1648633885549, }, { id: 2, emotion: 2, content: "오늘의일기 2번", date: 1648633885550, }, { id: 3, emotion: 3, content: "오늘의일기 2번", date: 1648633885551, }, { id: 4, emotion: 4, content: "오늘의일기 4번", date: 1648633885552, }, { id: 5, emotion: 5, content: "오늘의일기 5번", date: 1648633885553, }, ]; function App() { const [data, dispatch] = useReducer(reducer, dummyData); console.log(new Date().getTime()); const dataId = useRef(0); const onCreate = (date, content, emotion) => { dispatch({ type: "CREATE", data: { id: dataId.current, date: new Date(date).getTime(), content, emotion, }, }); dataId.current += 1; }; const onRemove = (targetId) => { dispatch({ type: "REMOVE", targetId }); }; const onEdit = (targetId, date, content, emotion) => { dispatch({ type: "EDIT", data: { id: targetId, date: new Date(date).getTime(), content, emotion, }, }); }; return ( <DiaryStateContext.Provider value={data}> <DiaryDispatchContext.Provider value={{ onCreate, onRemove, onEdit }}> <BrowserRouter> <div className="App"> <Routes> <Route path="/" element={<Home />} /> <Route path="/new" element={<New />} /> <Route path="/edit/:id" element={<Edit />} /> <Route path="/diary/:id" element={<Diary />} /> </Routes> </div> </BrowserRouter> </DiaryDispatchContext.Provider> </DiaryStateContext.Provider> ); } export default App;
-
미해결[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지
self.함수() 관련 질문 드립니다.
안녕하세요 강사님 강의 잘 듣고 있습니다.ㅎㅎ 강의를 듣던 중 질문이 생겨서 글을 작성합니다. 1. 여기서 제가 언급한 self.minmax()가 작동이 되는 근거는 위의 minmax함수의 return이 self라서 가능한 건가요?? 2. 여기서 solver 함수를 실행했을 때 self.minmax()의 결과가 minmax()함수의 return 값이 self랑 return 값이 self.data인 것들이 동일한 데 그 이유가 궁금합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링 완전정복 로드맵을 따라가고 있습니다.
스프링 완전정복 로드맵을 따라가고 있습니다. 그런데 ,, JPA관련 강의를 먼저 수강하시기를 추천 하시는데 정확히 어떤순서로 로드맵을 따라가야 괜찮을지 궁금합니다. 프로젝트 경험은 없습니다.
-
미해결PWA 시작하기 - 웹 기술로 앱을 만들자
깃헙 권한 요청 드립니다.
인프런 아이디 : nyjin@ncsoft.com 인프런 이메일 : nyjin@ncsoft.com 깃헙 아이디 : zacronan@naver.com 깃헙 Username : nyjin
-
미해결Express 튜토리얼 : 웹 서비스를 위한 핵심 API
5:30초때 app.post 부분 에러가 나요
app.post('/post/upload', (req, res) => { counter .findOne({name: "counter"}) .then((counterInfo) => { post .insertOne({ _id: counterInfo.postNum, title: req.body.title, contents: req.body.contents, date : new Date() }) .then(() => { counter .findOneAndUpdate( {name:"counter"}, { $inc : {postNum: 1}, } ) .then(() => { res.redirect("/"); }); }); }) .catch((err) => { console.log(err); res.send("글 저장에 실패"); }); }) 이렇게 했는데 에러가node:internal/errors:464 ErrorCaptureStackTrace(err); at new NodeError (node:internal/errors:371:5) at ServerResponse.setHeader (node:_http_outgoing:576:11) at ServerResponse.header (D:\inflearn-express\node_modules\express\lib\response.js:776:10) at ServerResponse.location (D:\inflearn-express\node_modules\express\lib\response.js:893:15) at ServerResponse.redirect (D:\inflearn-express\node_modules\express\lib\response.js:931:18) at D:\inflearn-express\index.js:38:13 at processTicksAndRejections (node:internal/process/task_queues:96:5) { code: 'ERR_HTTP_HEADERS_SENT' } [nodemon] app crashed - waiting for file changes before starting... 이렇게 나길래 찾아보니까 이미 응답을 보냈는데 한번더 응답을 보내려 할때 서버에서 충돌이 나서 오류가 나는거라고 하더라구요? 그래서 res.redirect("/"); 여기를return res.redirect("/"); 이렇게 고치니까 에러가안나는데 맞는건가요???
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
sasm 오류
첫 sasm강의에서 setting을 확인하라고 하면서 hello world가 출력이 안되는데 왜 그런건가요?
-
미해결눈떠보니 코딩테스트 전날
이렇게 해도되나요?
def going(stone, dog): list_n = []; for i in dog: print(i) cur_loc = 0 while cur_loc < len(stone)-1: print(cur_loc) stone[int(i["점프력"])-1] = stone[int(i["점프력"])-1] - int(i["몸무게"]) cur_loc = cur_loc + int(i["점프력"]) print("이동후", cur_loc) if stone[cur_loc]<0: # list_n.append("0") break if cur_loc >= len(stone)-1: list_n.append(i["이름"]) print(list_n) # for i in list_n: # if i == True: going(stone, dog)
-
해결됨대세는 쿠버네티스 (초급~중급편)
쿠버네티스 최신 버전 설치(vagrant file)가 완료된 상태에서 노드 개수를 늘릴 수는 없나요?
강사님, 유익한 강의 잘 듣고 있습니다. 혹시 이미 vagrant file로 설치된 상태에서, vm 개수를 늘릴 수 있을까요? vagrant file 코드를 진행중인 상태에서 변경하면 오류가 날까요? 세개의 노드를 더 설치하고 싶어서 여쭙니다! (최신버전_vagrant file로 환경 구축을 완료하고 여러 실습을 진행한 상태입니다.)
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
Texture를 만들어 줄 수 있는 경우의 수가 2가지 아닌가요?
33:56 부분에 실질적으로 텍스처를 만들어줄 수 있는 경우의 수가 3가지 라고 하셨는데 Create : 리소스 없이 코드로 CreateFromResource : 리소스로 이렇게 2가지 아닌가요? 나머지 한가지는 무엇인지 헷갈립니다.
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
스택프레임으로 이해를 못하겠어요
직접 그림그려가며 하고 있는데 이해가 좀 안돼요.. DFS(L+1, sum+arr[L]);가 계속 호출돼서, 결국 스택에 차례대로 쌓일텐데, 만약 L===n이 되었을 때 if문에 만족하지 못하면 바로 끝나고, 스택에 쌓였던 게 다시 pop되는거까진 이해했어요. 그런데 그 이후가 이해가 안돼요... 줄기가 어떤 순서로 가는지 궁금해서 미치겠어요 ㅜ 20분을 들여다봐도 이해가..... ㅜㅜ
-
미해결
How To Purchase Cryptocurrency Stock USA, U.K, Australia, Canada
Here is our rundown of the 10 best digital currency trades and contributing or exchanging stages. The cyrpto offers that show up on this site are from organizations buy cryptocurrency exchange from which The College Investor gets remuneration. This remuneration might affect how and where items show up on this site (counting, for instance, the request in which they show up). The College Investor does exclude all digital money trades or all crypto offers accessible in the commercial center.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
컬렉션 페치 조인 시 팀A가 2번 나오는 이유..?
컬렉션 페치 조인을 할 때 조회 결과가 증가하는 건 이해가 되는데 왜 List에 2번 들어가는 지 이해가 안됩니다 ㅠㅠ... 결과 리스트에는 각각 2개의 값, 총 4개의 값을 가지고 있는건가요..?
-
해결됨실습으로 배우는 OAuth 2.0 개념 원리, 그리고 해킹과 보안
Friends 로그인 시도 시 오류 발생
안녕하세요. 기능 테스트 강의를 보며 Friends 로그인 시도 시 동의화면 이후에 다음과 같은 오류가 발생하며 정상적으로 리다이렉션되지 않습니다. Notice: Undefined index: access_token in C:\Bitnami\wampstack-7.3.29-0\apache2\htdocs\wgw_website\oauth\callback.php on line 11Notice: Undefined index: refresh_token in C:\Bitnami\wampstack-7.3.29-0\apache2\htdocs\wgw_website\oauth\callback.php on line 12Notice: Undefined index: refresh_token in C:\Bitnami\wampstack-7.3.29-0\apache2\htdocs\friends_oauth\oauth\token.php on line 36{"token_type": "Bearer", "access_token": "토큰값", "refresh_token": "토큰값"} 액세스토큰과 리프레스 토큰이 정상적으로 발급되었으나 리다이렉션될 때 session에 실리지 않는 것 같은데 해결방안 좀 확인 부탁드려요. db 확인해보니 관련 테이블에는 토큰값이 잘 들어갔습니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
컨트로러에서 의존관계주입
안녕하세요 한가지 궁금한 것이 있어서 글을 남깁니다. 다름이 아니라 ItemValidator에 @Primary를 추가하고 다음 과 같이 의존관계 주입을 하면 안되나요? 동작은 정상적으로 하는 것 같은데 .. 밑의 사진과 같이 해놓을 경우 문제되는 부분이 있을까요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
질문이 있습니다.
제 방식대로 이미지 포함해서 수정하기 짜는중인데 질문이 두 개 있습니다. 1. firstImage <button onClick={onRemoveImage(i)}>제거</Button> 클릭시 해당 firstImage 에 있는 i값을 제외하고 filter로 가지고와서 해당 화면의 삭제 이외의 것들을 가지고 올껀데 dispatch 말고 어떻게 filter 된 값이 화면에 뿌려지게 해야할까요? firstImage 는 게시물의 기존 이미지 이고 imageUpdateState 는 firstImage 일때는 dispatch 안보내고 자체적으로 필터처리 해주기 위한 state 값입니다. 필터 처리는 되는데 삭제처리 한 후의 값 들을 이제 화면에 뿌려지면서 해당 화면에 보여줘야하는데 필터는되지만 화면 리렌더링이 안되어서 값이 안바뀌는 것같아요 어떻게 해야 할까요? 그래서 제가 알기론 state값이 바뀌면 리렌더링 되니까 setTest로 test 해보니 리렌더링은 되는 것 같은데 아래 console.log firstImage가 undefine가 나오는데 음.... 2. 이미지 삭제 적용 관련 dispatch 한 후 useSelctor로 받아온 데이터가 수정되어서 리렌더링 되는건가요?