묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
TSet 관련 질문입니다.
40:55 에서 TSet<int32, FString> NewSet = FruitSet; <- 이 구문은 아직도 유효한가요? 심각도 코드 설명 프로젝트 파일 줄 비표시 오류(Suppression) 상태 세부 정보오류(활성) E0312 "TSet<FString, DefaultKeyFuncs<FString, false>, FDefaultSetAllocator>"에서 "TSet<int32, FString, FDefaultSetAllocator>" (aka "TSet<signed int, FString, FDefaultSetAllocator>")(으)로의 사용자 정의 변환이 적절하지 않습니다. LevelChanger D:\Unreal Project\LevelChanger\Source\LevelChanger\GameInstance\MyGameInstance.cpp 38 라는 에러가 뜹니다. NewSet의 파라미터 타입이 2개인데, TSet에서 이 방식이 아직 유효한건가요?
-
미해결Next.js 시작하기
컴포넌트가 렌더링되어 HTML이 생성되는 곳 (getServerSideProps VS useEffect)
안녕하세요 :) 섹션 9 부분을 다 듣고 나서 명확히 이해가 가지 않는 부분이 있어 질문드립니다. getServerSideProps를 이용하여 페이지를 로딩할 때는 "컴포넌트가 렌더링되어 HTML이 생성되는 곳"이 프론트 서버(Next.js 서버)이고,useEffect를 이용하여 페이지를 로딩할 때는 "컴포넌트가 렌더링되어 HTML이 생성되는 곳"이 클라이언트(브라우저)라고 이해하는게 맞을까요?
-
해결됨한 입 크기로 잘라먹는 Next.js(v15)
클라이언트 컴포넌트로의 전환
강사님 안녕하세요.학습을 거의 끝낸 상태라 거의 마지막 질문이 될 것 같기도 한데요^^클라이언트 컴포넌트는 서버 컴포넌트를 Import 할 수 없기 떄문에 Next 는 서버 컴포넌트를 클라이언트 컴포넌트로 동작시킨다고 배웠습니다.그런데 만약 이러한 서버 컴포넌트에 async 방식의 api 코드가 포함되어 있는 경우에는 이런 코드가 클라이언트 방식으로 동작하면 문제가 발생할 것 같은데요.결국, 이런 상황에서는 서버 컴포넌트를 그대로 두어서는 안되고 강의에서 설명하신 합성 방식으로 변경을 하거나 아니면 해당 서버 컴포넌트의 API 로직을 react-query 나 useEffect 훅을 이용해서 실행될 수 있는 클라이언트 컴포넌트로 리팩토링을 해야만 되는거 같은데 제가 올바로 이해한 게 맞을까요?
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
Ansible 영상 중 docker image push 를 하려는 이유?
강의 덕분에 회사 개발서버에 돌아가는 모든 web 프로젝트를ci/cd 기반으로 돌아갈 수 있게 되었습니다.강의 듣던 중 궁금한게 있어 질문 드립니다.Ansible 영상 중 docker image push 를 이용해서 Ansibleimage 와 container 를 나눠 yml을 구동하려 하는데dockerfile이 아닌 해당 방법으로 하려는 이유가 궁금합니다.의도라고 하죠?궁금한 이유1. 프로젝트 소스가 포함된 이미지가 docker 사이트에 등록되지 않나요? [보안]2. 위처럼 하면 뭐가 좋아지는건지?
-
미해결
C4D subdivision surface안되는데GPS 버튼도 없음..
GPS 해제하면 subdivision surface 오류 고쳐진다는데 버튼이 없어요,, 어떻게 하면되나요 ㅠ
-
미해결나만의 포트폴리오 웹페이지 만들기
동영상을 최신버전에 맞게 업그레이드 해주시거나 css적용이 안되는 원인과 해결방법을 빠르게 써주실 수 있나요?
<!DOCTYPE html> <html lang="ko"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="Chrome"> <meta name="viewport" content="width-device-width, initial-scale-1.0, maximum-scale-1.0, minimum-scale-1.0, user-scalable-no"> <title>Portfolio - Navbar</title> <!-- saved from url=(0013)about:internet--> <!-- icon --> <script src="https://kit.fontawesome.com/64fe4437c7.js" crossorigin="anonymous"></script> <!-- fonts --> <link href="https://fonts.googleapis.com/css2?family=Heebo:wght@100..900&family=Noto+Sans+KR:wght@100..900&display=swap" rel="stylesheet"> <!-- user style --> <link rel="stylesheet" href="/css/portfolio.css"> </head> <body> <header class="header-area navbar-fade" id="header"> <nav class="Navbar"> <a class="Navbar-brand" id="navbarBrand">logo</a> <a class="Navbar-toggler" id="toggleBtn"><i class="fa fa-bars"></i></a> <div class="Navbar-menu" id="menu"> <div class="nav-item"><a class="nav-link" id="navbarAbout">about</a></div> <div class="nav-item"><a class="nav-link" id="navbarService">service</a></div> <div class="nav-item"><a class="nav-link" id="navbarPortfolio">portfolio</a></div> <div class="nav-item"><a class="nav-link" id="navbarReview">review</a></div> </div> </nav> </header> <!-- user script --> <script src="portfolio.js"></script> </body> </html>웨에거는 portfolio.html이고 아래거는 portfolio.css인데, 아이콘 적용도 안되고, css적용도 안되요! 고쳐주세요!/* COMMON */ * { margin: 0; padding: 0; font-size: 0; } body { box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; word-break: break-all; font-family: 'Heebo', sans-serif; } img { width: 100%; height: 100%; } a { text-decoration: none; font-size: 14px; text-transform: uppercase; } ul { list-style-type: none; } /* HEADER */ .header-area { position: relative; top: 0; left: 0; width: 100%; z-index: 99; background-color: white; box-shadow: 0 1px 10px rgba(0, 0, 0, 0.3); } .navbar-fade { animation-name: navbar-fade; animation-duration: 0.5s; -webkit-animation-name: navbar-fade; -webkit-animation-duration: 0.5s; } @keyframes navbar-fade { from {opacity: .4} to {opacity: 1} } @-webkit-keyframes navbar-fade { from {opacity: .4} to {opacity: 1} } .header-area.navbar-fixed { position: fixed; } .header-area > .navbar { width: calc(100% - 120px); margin: 0 60px; overflow: hidden; } @media (min-width: 992px) { .header-area > .navbar { max-width: 900px; margin: 0 auto; } } @media (min-width: 1200px) { .header-area > .navbar { max-width: 1000px; } } .header-area > .navbar > .navbar-brand { display: inline-block; position: absolute; top: 50%; transform: translateY(-50%); font-size: 32px; cursor: pointer; } .header-area > .navbar > .navbar-toggler * { font-size: 32px; } .header-area > .navbar > .navbar-toggler { float: right; height: 70px; line-height: 70px; font-size: 32px; cursor: pointer; } @media(min-width: 992px) { .header-area > .navbar > .navbar-toggler { display: none; } } .header-area > .navbar > .navbar-menu { position: absolute; background-color: rgba(0, 0, 0, 0.5); top: 70px; left: 0; width: 100%; height: 200px; transition: 0.5s ease; overflow: hidden; } .header-area > .navbar > .navbar-menu.show { height: 200px; } .header-area > .navbar > .navbar-menu > .nav-item { float: none; display: block; height: 50px; line-height: 50px; } .header-area > .navbar > .navbar-menu > .nav-item:hover * { background-color: rgba(0, 0, 0, 0.4); } .header-area > .navbar > .navbar-menu > .nav-item > .nav-link { display: block; padding-left: 50px; color: white; cursor: pointer; } @media (min-width: 992px) { .header-area > .navbar > .navbar-menu { position: relative; background-color: transparent; float: right; top: 0; width: auto; height: auto; transition: none; } .header-area > .navbar > .navbar-menu.show { height: auto; } .header-area > .navbar > .navbar-menu > .nav-item { display: inline-block; height: 70px; line-height: 70px; } .header-area > .navbar > .navbar-menu > .nav-item:hover * { background-color: transparent; } .header-area > .navbar > .navbar-menu > .nav-item > .nav-link { display: block; padding: 0 20px; color: black; } }css파일을 css폴더에 넣고 <link rel="stylesheet" href="/css/portfolio.css">로 불러오기를 했는데 안되요!
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
환경설정 20:20초 빌드 시
빌드 시 링크 에러 2개가 나옵니다.강의 따라서 잘 타이핑 하고 따라왔는데..이 두개의 오류가 나오면서 빌드 실패를 합니다.왜 그런걸까요?
-
해결됨스프링 DB 2편 - 데이터 접근 활용 기술
@Autowired를 할 때 이 두 가지 방식의 차이
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]@Autowired PlatformTransactionManager transactionManager; TransactionStatus status;이 코드와@Autowired PlatformTransactionManager transactionManager; @Autowired TransactionStatus status;이 코드는 다르게 동작하나요? 제가 실수로 두 번째 코드로 썼다가 오류가 났었는데 첫 번째 코드로 하니 정상 동작이 되었습니다.+)아 잠시 헷갈렸습니다..
-
해결됨iOS Clean Architecture & MVVM: RxSwift 완전 정복
즐겨찾기 탭에서 페이지네이션 422 서버 에러
안녕하세요, 페이지네이션 부분 오류가 있는 것 같아 질문 드립니다! UserListViewController에서 'bindView()' 메서드에서 페이지네이션을 구현하고 있습니다.강의 내용과 같이 구현하면, 즐겨찾기 유저를 여러 명 추가 후 다시 앱을 실행했을 때, Core Data에 저장된 즐겨찾기 유저 목록은 그대로 표시됩니다. 즐겨찾기 목록 테이블뷰를 맨 밑으로 스크롤 하면 422 서버에러가 발생합니다.테이블뷰의 맨 밑으로 스크롤 하면 바인딩 되어 있던 tableView의 prefetchRows(또는, willDisplayCell)의 코드가 실행되게 되고 fetchMore의 값이 변경되어 fetchUser()가 실행되어 output의 값이 변경되는데, 이때 텍스트필드 값은 비어있기 때문에 데이터를 받아오는 과정에서 422 에러가 발생하는 것이라 예상됩니다. 아래 코드와 같이 row를 받아 올 때, self?.tabButtonView.selectedType.value == .api를 추가하여 selectedType이 api 타입일 때만 fetchMore의 값이 변경되도록 수정하면 422 에러가 발생하지 않습니다.제가 생각한 오류의 원인과 해결 과정이 올바른지 질문드립니다! tableView.rx.willDisplayCell.bind {[weak self] (cell, indexPath) in guard let row = self?.tableView.numberOfRows(inSection: 0), self?.tabButtonView.selectedType.value == .api else {return} if indexPath.item >= row - 1 { self?.fetchMore.accept(()) } }.disposed(by: disposeBag) }
-
미해결FreeRTOS 프로그래밍
LCD 프로젝트 가져오기 질문 있습니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요1602 LCD쓰고 있고, 순서대로 SCL, SDA VCC, GND 다 잘 연결해서 LCD에 불빛은 들어오는데 mutex 켜기전에 그냥 펌웨어 코드로 LCD에 글자 나오게 하는게 안 되네요 왜 이럴까요? LCD는 새로샀고 펌웨어도 새로 사서 문제는 아니라고 생각합니다 풀업저항을 안 달고 그냥 보드랑 LCD랑 연결해서 그런걸까요?
-
미해결[게임 프로그래머 도약반] DirectX11 입문
SRT 행렬중에 ppt 질문 있습니다.
이 행렬 계산 중에 v벡터를 전치해서 계산해야 저런 식이 나올 거 같은데 위의 계산과 아래의 계산의 차이는 뭔가요?
-
해결됨그림으로 배우는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}
Kubenetes 클러스터에 추가적으로 신뢰하는 CA를 넣을 수 있나요?
리눅스 서버 4대를 가상화로 올려서 클러스터를 구성하였습니다.클러스터에서 애플리케이션을 구성하려고 하는데App -> Dex -> KeyCloak(IdP) 이런 형태로 인증시스템을 구성하려고 합니다.App, Dex, KeyCloak 모두 Ingress의 Tls에 self-signed CA로 서명한 서버 TLS 인증서를 넣어서 개별로 시스템에 접속을 하면 HTTPS가 잘 동작합니다.(윈도우에 신뢰하는 CA를 추가하였음)그런데 Dex에서 KeyCloak 으로 OIDC metadata 를 가지오기 위에 .WellKnown ~~ 어쩌고 하는 Url로 요청을 하는데 이때 dex pod 에서 아래와 같은 오류가 발생합니다.failed to initialize server: server: Failed to open connector edgeidp: failed to open connector: failed to create connector edgeidp: failed to get provider: Get "https://auth.myapptestkjj/realms/myapptestkjj/.well-known/openid-configuration": tls: failed to verify certificate: x509: certificate signed by unknown authority그래서 pod 내부에서 KeyCloak으로 데이터를 요청하는데 신뢰할 수 없기 때문에 오류가 난다고 판단하여 신뢰하도록 조치를 하고 싶습니다. 그렇게 하기 위해서 클러스터 OS 에 모두 ca를 추가해서 신뢰하는 인증서도 등록을 했는데 소용이 없었습니다.무언가 다른 방법이 있는것 같은데 도저히 답을 못 찾겠어서 질문을 드립니다.약간의 팁이라도 좀 부탁드립니다.ㅠㅠ
-
미해결FreeRTOS 프로그래밍
LCD 프로젝트 가져오기
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 1602 LCD로 실습하려고 하는데, VCC,GND는 다 잘 연결했고, SDA, SCL CN 어디에 연결해야하는지.. 등등 프로젝트 세팅에 대해 아무것도 없어서 막혀있는 상태입니다 ㅜ
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
12주차 스프라이트 강의 영상이 재생이 안 됩니다
다른 영상은 정상적으로 재생이 되는데 12주차 스프라이트 만 재생이 안 되고 무한로딩이 됩니다. 재부팅이나 새로고침해도 해결이 안 되는데 확인 해주실 수 있을까요
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형1 모의문제1 문제6
안녕하세요. 소수점 나이를 제거하라고 되어 있는데이 부분을 소수점(실수형)->정수형으로 변환하도록df1['age'] = df1['age'].astype(int)라고 쓰면 틀린 답안이 될까요?
-
미해결GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
섹션 .con02 gsap 질문
안녕하세요 먼저 너무 유익하고 도움이되는 강의를 주셔서 감사드립니다. .con02에 workList gsap쪽에 질문이 있어서 글 남기게 되었습니다.my work 타이틀이 fixed되고 리스트들이 올라왔다가 다시 스크롤을 천천히 위 방향으로 해서 올라가다보면 리스트 영역이 이상하게 위로 올라왔다가 사라지는 현상이 있어서 문의 드립니다.
-
미해결
Cover Letter Tips for Returning to School While Working?
I’m applying for jobs to support myself while I return to college part-time. My friend suggested I mention my new studies in my cover letter, showing my commitment to learning and developing skills. They also recommended a cover letter for emirates to make my letter more impressive. Any advice on balancing a work and study focus in a cover letter?
-
미해결한 입 크기로 잘라먹는 Next.js(v15)
리퀘스트 메모이제이션이 동작을 안하는것 같습니다.
/app/(with-searchbar)/page.tsx/app/layout.tsx터미널 첨부한 사진과 같이 수업내용에 따라 코드를 작성하였고, 선생님의 화면과는 다르게 저렇게 같은 GET 호출이 두번이 나오네요... 옵션을 따로 추가하는것으로 바뀌었을까요??npm run dev를 껐다가 다시 실행해도 마찬가지의 결과가 나옵니다!
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
12.15강의 10분 Edit페이지에서 삭제하기(onDelete) 기능 질문
TypeError: onDelte is not a functiononDelete를 함수로 인식하지 못하고 있다고 합니다. 오탈자가 문제인건지 잘 모르겠습니다....import "./App.css"; import { useReducer, useRef, createContext } from "react"; import { Route, Routes } from "react-router-dom"; import Home from "./pages/Home"; import Diary from "./pages/Diary"; import New from "./pages/New"; import Notfound from "./pages/Notfound"; import Edit from "./pages/Edit"; // 1. "/" : 모든 일기를 조회하는 Home 페이지 // 2. "/new" : 새로운 일기를 작성하는 New 페이지 // 3. "/diary" : 일기를 상세히 조회하는 Diary 페이지 const mockData = [ { id: 1, createdDate: new Date("2024-11-04").getTime(), emotionId: 1, content: "1번 일기 내용", }, { id: 2, createdDate: new Date("2024-11-03").getTime(), emotionId: 2, content: "2번 일기 내용", }, { id: 3, createdDate: new Date("2024-10-07").getTime(), emotionId: 3, content: "3번 일기 내용", }, ]; function reducer(state, action) { switch (action.type) { case "CREATE": return [action.data, ...state]; case "UPDATE": return state.map((item) => { String(item.id) === String(action.id) ? action.data : item; }); case "DELETE": return state.filter((item) => String(item.id) !== String(action.id)); default: return state; } } export const DiaryStateContext = createContext(); export const DiaryDispatchContext = createContext(); function App() { const [data, dispatch] = useReducer(reducer, mockData); const idRef = useRef(4); //기본 일기 추가 const onCreate = (createdDate, emotionId, content) => { dispatch({ type: "CREATE", data: { id: idRef.current++, createdDate, emotionId, content, }, }); }; // 기존 일기 수정 const onUpdate = (id, createdDate, emotionId, content) => { dispatch({ type: "UPDATE", data: { id, createdDate, emotionId, content, }, }); }; // 기존 일기 삭제 const onDelete = (id) => { dispatch({ type: "DELETE", id, }); }; return ( <> <DiaryStateContext.Provider value={data}> <DiaryDispatchContext.Provider value={{ onCreate, onUpdate, onDelete }}> <Routes> <Route path="/" element={<Home />} /> <Route path="/new" element={<New />} /> <Route path="/diary/:id" element={<Diary />} /> <Route path="/edit/:id" element={<Edit />} /> <Route path="*" element={<Notfound />} /> </Routes> </DiaryDispatchContext.Provider> </DiaryStateContext.Provider> </> ); } export default App; import Header from "../components/Header"; import Button from "../components/Button"; import Editor from "../components/Editor"; import { useParams, useNavigate } from "react-router-dom"; import { useContext } from "react"; import { DiaryDispatchContext } from "../App"; const Edit = () => { const params = useParams(); const nav = useNavigate(); const { onDelte } = useContext(DiaryDispatchContext); const onClickDelete = () => { if (window.confirm("일기를 정말 삭제할까요? 다시 복구되지 않아요!")) { //일기 삭제 로직 //console.log(params.id); onDelte(params.id); nav("/", { replace: true }); } }; return ( <div> <Header title={"일기 수정하기"} leftChild={<Button onClick={() => nav(-1)} text={"< 뒤로 가기"} />} rightChild={ <Button onClick={onClickDelete} text={"삭제하기"} type={"NEGATIVE"} /> } /> <Editor /> </div> ); }; export default Edit;
-
미해결[2025년 출제기준] 웹디자인기능사 실기시험 완벽 가이드
2025년 실기준비할때도 참고하면 좋을 강의일까요?!
아직 결제만하고 강의시청은 안한상태인데2025년 웹디자인개발기능사로 바뀌는데내용도 바뀐다고 알고있는데 이 강의로2025년도꺼 준비해도 무리는 없을까요!?혹시 2025년도 버전 강의가 새로 나오면 그걸로 결제할까해서요 여쭤볼곳이 없어서 여기에 적습니다.답변주시면 감사하겠습니다.!