묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결React Native with Expo: 제로초에게 제대로 배우기
서비스 어카운트 키 선택 질문
제로초님 안녕하세요 eas credentials 실행하고 What do you want to do? ❯ Set up a Google Service Account Key for Push Notifications (FCM V1) ❯ [Choose an existing key]누르면 eas submit을 위해 생성했던 서비스 어카운트 키만 나오는데, 이걸 선택해도 되는건가요? 현재 제 구글 클라우드 콘솔에 프로젝트는 eas submit을 위해 생성했던 프로젝트 하나, 파이어베이스 프로젝트를 생성해서 생긴 프로젝트 하나 이렇게 총 두개가 있는 상황이고, eas submit용 프로젝트를 먼저 생성했었습니다.
-
해결됨한 입 크기로 잘라먹는 Next.js(v15)
리뷰를 데이터베이스 입력 시 어떤 준비를 해야 하나요??
강의를 보다가 리뷰 입력 하는 부분..약 2분 정도 되는 시점에서 리뷰를 데이터 베이스에 입력 하기 위해서는 준비해야 할 것이 많다고 하셨는데..구체적으로 어떤 준비가 필요한가요??supabase를 사용 하는 것이니까 테이블 만들고..insert 함수 호출 해서 입력 하면 되는 것 외에 다른 준비를 해야 하는 것이 있나요??
-
해결됨[Live 챌린지] 6주 완성! 개발 실무를 위한 고농축 바이브코딩 (Cursor AI, Figma)
prompt.103.enum.txt에 오타
prompt.103.enum.txt에 오타가 있습니다. 실제 강의 내용과 이미지는 .png 파일로 되어있는데,다운로드 받은 prompt.103.enum.txt에는 .svg로 되어있네요.수정이 필요해보여요.
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
React.memo 를 TodoItem 에 적용하는 부분에서 질문 있습니다.
const TodoItem = ({ id, isDone, content, date, onUpdate, onDelete }) => { const onChangeCheckbox = () => { onUpdate(id); }; const onClickDeleteButton = () => { onDelete(id); }; return ( <div className="TodoItem"> <input onChange={onChangeCheckbox} type="checkbox" checked={isDone} /> <div className="content">{content}</div> <div className="date">{new Date(date).toLocaleDateString()}</div> <button onClick={onClickDeleteButton}>삭제</button> </div> ); }; export default memo(TodoItem, (prevProps, nextProps) => { // 반환값에 따라, Props가 바뀌었는지 안바뀌었는지 판단 // T -> Props 바뀌지 않음 -> 리렌더링 X // F -> Props 바뀜 -> 리렌더링 O if (prevProps.id !== nextProps.id) return false; if (prevProps.isDone !== nextProps.isDone) return false; if (prevProps.content !== nextProps.content) return false; if (prevProps.date !== nextProps.date) return false; return true; });TodoItem 의 props 에 함수(객체 타입의 값)을 받고 있어서export default memo(TodoItem);이렇게만 적용할 경우 리렌더링 시, 함수를 새로운 객체로 인식해서 TodoItem 컴포넌트 입장에서는 props가 바뀌었다고 인식한다는 거 까지는 이해가 됐습니다.근데 memo 의 두 번째 인수에서if (prevProps.id !== nextProps.id) return false; if (prevProps.isDone !== nextProps.isDone) return false; if (prevProps.content !== nextProps.content) return false; if (prevProps.date !== nextProps.date) return false;이렇게만 비교하면 결국 onUpdate, onDelete 는 비교를 하지 않은거같은데 왜 동작이 잘 되는지 모르겠습니다.true 값을 반환해주면 함수는 변하지 않았다고 정해주는 걸까요?
-
해결됨[VOD] 6주 완성! 개발 실무를 위한 고농축 바이브코딩 (Cursor AI, Figma)
톡투피그마 mcp 연결이 안돼요 ㅠㅠ
톡투피그마 mcp 연결이 안돼요 ㅠㅠ 노란불 들어오다가 결국 빨간불 들어옵니다 윈도우라 개발 환경이 다른걸까요?
-
해결됨[VOD] 6주 완성! 개발 실무를 위한 고농축 바이브코딩 (Cursor AI, Figma)
깃은 어떻게 하나요?
개발 초보인데url로 배포해서 결과물 보고 싶은데 초보라 모르겠습니다
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
생성한 newTodo 객체를 setTodos 를 이용해 추가하는 부분에서 질문 있습니다
const onCreate = (content) => { const newTodo = { id: idRef.current++, isDone: false, content: content, date: new Date().getTime(), }; setTodos([newTodo, ...todos]); };지금처럼 이렇게 newTodo 를 todos 배열의 맨 앞에 붙이면 원래 기존의 todos 요소 전체의 인덱스가 변화해야해서 동작시간이 오래 걸린다고 앞의 수업에서 들었던 것 같아서 왜 이렇게 하는지 의문이 들었습니다.이렇게 해야 나중에 등록한 newTodo 객체가 맨 위로 올라오게 되어서 그런건가요?
-
해결됨(2025) MBTI 테스트 기반 수익형 웹사이트 만들기 - <코딩 배워 사업하자>
이미지 생성 참조 툴 문의
안녕하세요. 강사님! 좋은 강의 정말 감사드립니다!! 한가지 여쭙고 싶은게 있는데, 이미지 생성 툴을 어떤걸 쓰시지는 문의드려도 될까요?텍스트 처리는 어떻게 진행하시는지 문의드려도 될까요?수업은 대충 다 들었는데, 이미지 제작에 어려움을 겪고 있어서문의 드립니다. 혹시 공유 가능하시면 공유 부탁드리겠습니다. 이상입니다.감사합니다. :)
-
해결됨[Live 챌린지] 6주 완성! 개발 실무를 위한 고농축 바이브코딩 (Cursor AI, Figma)
현재 버전과 맞지 않습니다.
위 내용대로 하면 될까요?업데이트 반영 부탁드립니다.
-
해결됨[Live 챌린지] 6주 완성! 개발 실무를 위한 고농축 바이브코딩 (Cursor AI, Figma)
룰 적용이 계속 안되는것 같아요
뒤의 강의대로 구현하다보면 룰적용이 항상 안되서 봤는데 위 이미지처럼 나옵니다.조건-커서룰 적용이 왜 안되는지 궁금합니다.
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
Components 와 Profiler 탭이 나오지 않습니다.
크롬에서 추가하고 설정 다 따라서 했는데 components 탭이 나오지 않습니다...
-
해결됨한 입 크기로 잘라먹는 Next.js(v15)
global-error에서는 window.location.refresh()를 쓰면될까요
라우트 그룹의 경로에 에러가 안나오고 레이아웃의 footer에서 걸려서 아래 질답글을 보고 글로벌에 연습해보고 있는데요. 해당 에러가 발생해서 ai에 물어보니 아래와 같이 답변하는데 ai의 답변이 정확할까요? section04\src\app\global-error.tsx:16 Uncaught TypeError: reset is not a function ai:global-error.tsx에서 reset이 동작하지 않는 이유는 Next.js의 알려진 버그 때문입니다. error.tsx에서는 reset() 함수가 정상적으로 작동하지만, global-error.tsx에서는 reset() 호출 시 내부적으로 parallelRoutes.get을 호출하려다가 parallelRoutes가 null이어서 "Cannot read properties of null (reading 'get')" 에러가 발생합니다.문제 원인global-error.tsx는 루트 레이아웃 전체를 대체하는 특수한 에러 바운더리이기 때문에, 일반 error.tsx와 달리 내부 라우터 상태를 제대로 복구하지 못하는 구조적 한계가 있습니다. Next.js 팀에서도 이 문제를 인지하고 있으며 여러 canary 버전에서 수정을 시도했지만, 최신 버전까지도 완전히 해결되지 않은 상태입니다.해결 방법global-error.tsx에서는 reset() 대신 router.refresh()만 사용하거나, 아예 페이지 새로고침(window.location.reload())을 사용하는 것이 권장됩니다. 코드를 다음과 같이 수정하세요
-
미해결타입스크립트로 배우는 리액트(React.js) : 기초부터 최신 기술까지 완벽하게
리액트 웹뷰 관련 문의
안녕하세요 수코딩님! 강의 외적으로 궁금한 사항이 있습니다! 다름이 아니라, 혼자 회사에서 프로젝트를 진행하고 있는 상황에, 지그재그 같은 사이트를 보면 웹뷰를 이용하고 있지 않나 싶은데, 왜 이렇게 앱 화면처럼 화면을 잘라서 처리를 한걸까요?
-
미해결다양한 프레임워크로 구축하는 포트폴리오 사이트 개발 마스터 클래스
폰트 css url 링크
fonts.css의 폰트 url 링크가 변경된거 같습니다.최신화 업데이트 요청드립니다.
-
해결됨[Live 챌린지] 6주 완성! 개발 실무를 위한 고농축 바이브코딩 (Cursor AI, Figma)
cursorTalkToFigmaMcp 사용방법
피그마 mcp 사용방법 따로 가이드 없을까요..? 커서에서도 뭔가 mcp툴을 설치해줘야하는것같고 bun을 설치해서 피그마에서 나오는 스크립트를 실행시켜줘야 커넥션이 생기는것같은데. 강의를 보고 따라했는데 실제로 figma랑 연결안하고 자동으로 타이포그라피랑 컬러를 생성하는것같아요..
-
미해결한 입 크기로 잘라먹는 Next.js(v15)
use client때문인지???? zustand때문인지?
안녕하세요...top menu를 depth로 2단계 까지만 표현하고.left menu를 3~4단계를 표현하는 구성으로 했는데. 상태값으로 zustand를 사용합니다. top메뉴 컴포넌트에서 zustand값을 사용해야해서 use clinet로 하고.useEffect로 메뉴 정보를 가져온 다음zustand로 메뉴 정보를 set하고 set할때 topmenu와 leftmenu 상태값으로 각각 set합니다. 문제는 처음 가지고 올때는 정상적으로 작동을 하는데....리플레쉬를 하거나 계시판을 페이지 이동을 하면 top 메뉴가 재구성 될때 너무 깜빡거리면서 이상하게 되네요. react로 할때는 이렇게 깜빡거리지는 않았는데...도저히 이유를 모르겠네요...T.T원인이 뭘까요?
-
미해결Next.js 완벽 마스터 (v15): 노션 기반 개발자 블로그 만들기 (with 커서AI)
Notion API-DB 연결이 안돼요
노션 API 통합해서 API키 제대로 입력했고, 블로그템플릿 데이터베이스에서 링크 오픈하고, 그 링크에서 사이트주소랑 쿼리스트링 다 날리고 ID 부분만 제대로 입력했고, 다 제대로 했습니다.그런데 계속 노션 API 연결 안된다고 에러가 뜹니다. 아예 다 지우고 다시 만들고 해봐도 안됩니다. 왜그런걸까요? ㅠㅠ 그리고 현재 @notionhq/client 의 버전에서는database.query가 아니라 dataSources.query입니다.const { Client, APIErrorCode } = require("@notionhq/client") try { const notion = new Client({ auth: process.env.NOTION_TOKEN }) const myPage = await notion.dataSources.query({ data_source_id: dataSourceId, filter: { property: "Landmark", rich_text: { contains: "Bridge", }, }, }) } catch (error) { if (error.code === APIErrorCode.ObjectNotFound) { // // For example: handle by asking the user to select a different data source // } else { // Other error handling code console.error(error) } }
-
미해결한 입 크기로 잘라먹는 Next.js(v15)
npx prisma studio 오류
🚨 필독) 질문하시기 전에 꼭 읽어주세요 (10초 소요)제목을 구체적으로 작성해 주세요✅ 좋은 예 : 감정일기장 Home 구현중 xx 이슈가 발생합니다.⛔️ 나쁜 예 : 이거 왜 안되나요?, 오류나요 도와주세요 등비슷한 궁금함을 갖고 계신 분들께 도움이 될 수 있어요! 코드의 이슈는 전체 프로젝트를 "링크 형태"로 올려주셔야 원인을 파악할 수 있습니다.깃허브, 구글드라이브 등의 수단을 통해 링크 형태로 전달해주세요직접 실행해보며 원인을 파악해야 하기 때문에 텍스트 형태로 붙여넣는건 삼가해주세요 🥲 답변이 도움이 되셨다면 답글 or 해결완료 버튼을 클릭해주세요비슷한 궁금함을 갖고 계신 분들께 도움이 될 수 있어요!제 답변이 여러분께 도움이 되었는지 저도 알고 싶어요 🥲 강의 내용에 궁금한 점이 있다면 몇 챕터의 몇 분 몇 초인지 알려주시면 더 좋아요더 빠른 답변이 가능합니다!7.2) 리뷰 추가 기능 구현하기 수강하고 있는데요 리뷰데이터를 보기 위해 npx prisma studio를 터미널에 치면% npx prisma studio Need to install the following packages: prisma@6.17.1 Ok to proceed? (y) npm error code ETIMEDOUT npm error syscall read npm error errno -60 npm error network read ETIMEDOUT npm error network This is a problem related to network connectivity. npm error network In most cases you are behind a proxy or have bad network settings. npm error network npm error network If you are behind a proxy, please make sure that the npm error network 'proxy' config is set properly. See: 'npm help config' npm error A complete log of this run can be found in: /Users/minsu/.npm/_logs/2025-10-13T05_36_52_783Z-debug-0.log 라고 나오네요 혹시 해결법 알 수 있을까요? prisma 초기화 하고 prisma 클라이언트 생성해도 모델이 없다고 떠서 리뷰 데이터 확인이 불가합니다
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
forEach에서 continue, break 동작안하는 문제
forEach에서 continue, break 동작안하는 문제 가 발생하였는데continue랑 break를 쓸거면 일반적인 for문을 이용할 수밖에 없는 건지 궁금합니다. ^^
-
미해결한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
react도 포멧팅 스타일이 따로 있나요?
구글 스타일 처럼 대표적인 포맷팅 스타일이 있나요?