문제1 vcs내에 cmd에서는 node -v, npm -v의 버전이 잘 나오는데 bit bash 환경에서는 사진과 같이 오류가 나옵니다 어러번 node.js를 삭제하고 깔아봤는데 계속 이럽니다 문제2 git bash환경에서 오류가 떠 cmd에서 시도를 해보았습니다. 명령프롬프트(cmd)에서는 node, npm, yarn의 버전이 잘 나오지만 vsc내에 cmd에서는 나머지의 버전은 잘 나오지만 yarn의 버전이 나오질 않습니다. 버전을 모두 확인 후 npx create-next-app를 해야하는데 앞의 문제들 때문에 그런지 npx create-next-app가 실행이 되지 않습니다. 초반 세팅 과정 때문에 시간을 너무 잡아먹는 것 같아요 도와주세요 ㅠㅠ
강의 잘 듣고 있습니다. dependencies와 devDependencies의 차이에 대해서 궁금한데요, 둘의 차이점은 앱 배포 시 포함이 되느냐 안되느냐의 차이로 알고 있습니다. 그런데 tanstack-query나, date-fns를 devDependencies에 설치하고 vercel에 배포를 하더라도 배포된 프로덕션 환경에서 정상적으로 작동하는데요, 이에 대한 챗 gpt의 답변은 다음과 같습니다. Vercel의 배포 프로세스 Vercel은 next build 를 실행하여 프로젝트를 빌드하고, 필요한 의존성을 설치합니다. 이때 dependencies 와 devDependencies 모두가 설치됩니다. 배포 환경에서도 devDependencies 의 패키지가 포함될 수 있는 이유는 Next.js의 빌드 시점 에 이 패키지가 필요하기 때문입니다. 예를 들어, @tanstack/react-query 는 런타임에 필요한 라이브러리인데, 이를 devDependencies 에 넣어두었더라도 next build 과정에서 번들된 코드에 포함됩니다. 따라서 Vercel에서 배포 후에도 런타임에 사용 가능합니다. React Query와 런타임 의존성 @tanstack/react-query 는 런타임에 작동해야 하는 의존성입니다. 따라서 빌드 결과물에 포함 되며, devDependencies에 설치된 상태라도 번들링 과정에서 런타임에 필요한 모든 코드를 포함합니다. @tanstack/react-query-devtools 는 개발 도구용이지만, 프로덕션 환경에서는 기본적으로 UI가 렌더링되지 않아 에러를 발생시키지 않습니다. dependencies 와 devDependencies 의 차이 dependencies : 런타임에 반드시 필요한 의존성. devDependencies : 개발 및 빌드 단계에서만 필요한 의존성. Next.js에서는 빌드 과정에서 사용하는 패키지든, 런타임에 사용하는 패키지든 모두 번들링되기 때문에 devDependencies 에 패키지가 있어도 문제가 없는 것처럼 보일 수 있습니다. Vercel이 에러 없이 작동하는 이유 @tanstack/react-query 는 devDependencies 에 있지만, 빌드 과정에서 번들링되어 클라이언트 코드로 전달되었기 때문에 런타임에서 정상적으로 작동합니다. 프로덕션 환경에서 ReactQueryDevtools 가 기본적으로 비활성화 상태라 에러가 뜨지 않습니다. 답변이 잘 이해가 안되어서 그러는데 빌드 시점에 dependencies와 devDependencies에 있는 모든 라이브러리가 설치되는건가요? 아니면 devDependencies에 있는 라이브러리라도 런타임 시점에 필요하다면 빌드 시에 설치가 되어 프로덕션 환경에 포함되는건가요? 제가 이해한 바로는, devDependencies에 있는 라이브러리더라도, 런타임 환경에서 필요한 라이브러리라면 알아서 분류하여 프로덕션 환경에 포함되도록 설치한다고 이해하였는데, 이렇게 된다면 dependencies와 devDependencies의 경계가 모호해지는 것 아닌가요?
안녕하세요 실습용 백엔드 서버에 대해 궁금한점이 있습니다. 강의에서 한입북스라는 서버를 가지고 실습을 하는데 이 서버는 날씨api, 영화api와 같이 그냥 도서 데이터가 들어있는걸 가져온다는건가요? 아니면 서버사이드렌더링으로 만들어 놓은 페이지 같은걸 가져오기 위함인가요?
네이버 지식인 여러페이지 정적 크롤링은 강의에 있어서 따라하니 잘 되는데 동적 페이지 크롤링인 네이버 쇼핑은 for i in 코드를 넣으니 넘어가지지가 않네요 ㅜㅜ 동적 페이지 크롤링인 네이버 쇼핑 여러페이지 넘어갈때는 다른 코드를 작성해야하는걸까요? 네이버 지식인 여러페이지 크롤링 할 때처럼 하니 페이지가 안넘어가지네요...
vscode (windows)사용 기존) mydjango02 폴더--> django 설치 --> startproject --> manage.py 생성 질문 1) mydjango 03 폴더 --> django 설치 --> django runserver가 돌아가지 않습니다. 질문 2) 이전에 따라하기에선 django runserver가 돌아갔었는데 디버그시 mydjango.py가 나타나지 않았습니다. 그래서 실습을 기존에 설치된 manage.py로 했는데 제가 어느 부분에서 실수 할 가능성이 있을까요?
module.css 에서 :global 에 대한 궁증즘이 생겨 문의드립니다. 1번 방법 .header { height: 60px; font-weight: bold; font-size: 18px; line-height: 60px; :global(a) { color: black; text-decoration: none; } } 2번 방법 .header { height: 60px; font-weight: bold; font-size: 18px; line-height: 60px; :global { a { color: black; text-decoration: none; } } } 3번 방법 :global(a) { color: black; text-decoration: none; } 4번 방법 :global .header a { color: black; text-decoration: none; } 위 방법 모두 아래와 같은 에러가 뜨고 있습니다. Selector ":global" is not pure (pure selectors must contain at least one local class or id) 제가 숙지하기로는 css nested 문법은 최신문법으로 sass,postcss 등이 없어도 지원이 되고있는 걸로 알고 있어서 처음에는 sass,postcss 등 설치없이 진행했다가 안되서 모두 설치해 보고 위를 모두 실행해 봤는데도 같은 에러가 나고 있습니다. 어떻게 하면 에러가 나지 않을까요? 참고로 저는 퍼블리셔로 일하고 있는데 현재 일하고 있는 프로젝트에서는 :global 을 아래와 같이 사용하고 있는 중입니다. .header { height: 60px; font-weight: bold; font-size: 18px; line-height: 60px; :global { a { color: black; text-decoration: none; } } } 여기 프로젝트 소스가 복잡하기도 하고 얕은 지식으로 분석을 해보긴 했으나 해결이 안되고 있습니다. 한입 넥스트를 진행하면서 :global 를 적용하려고 테스트해봤지만 잘 안되어 문의드리오니 소중한 답변 부탁드립니다.
선생님 데이터 베이스관련 질문드립니다. superbase에서 핑 확인해봐도 값이 안오고 데이터베이스가 죽어버린거 같은데 이럴경우 금액을 늘려야 하나요? 무료가 리소스 얼마나 제공하는지를 모르겠네요 오류코드 같이 첨부합니다. [Nest] 11338 - 02/10/2025, 3:19:23 PM ERROR [ExceptionsHandler] Invalid `this.prisma.book.findMany()` invocation in /Users/wi/WebstormProjects/onebite-books-server-main/src/book/book.service.ts:27:35 24 } 25 26 async findAllBooks() { → 27 return await this.prisma.book.findMany( Can't reach database server at `aws-0-ap-northeast-2.pooler.supabase.com`:`5432` Please make sure your database server is running at `aws-0-ap-northeast-2.pooler.supabase.com`:`5432`. PrismaClientInitializationError: Invalid `this.prisma.book.findMany()` invocation in /Users/wi/WebstormProjects/onebite-books-server-main/src/book/book.service.ts:27:35 24 } 25 26 async findAllBooks() { → 27 return await this.prisma.book.findMany( Can't reach database server at `aws-0-ap-northeast-2.pooler.supabase.com`:`5432` Please make sure your database server is running at `aws-0-ap-northeast-2.pooler.supabase.com`:`5432`. at In.handleRequestError (/Users/wi/WebstormProjects/onebite-books-server-main/node_modules/@prisma/client/runtime/library.js:122:7154) at In.handleAndLogRequestError (/Users/wi/WebstormProjects/onebite-books-server-main/node_modules/@prisma/client/runtime/library.js:122:6188) at In.request (/Users/wi/WebstormProjects/onebite-books-server-main/node_modules/@prisma/client/runtime/library.js:122:5896) at l (/Users/wi/WebstormProjects/onebite-books-server-main/node_modules/@prisma/client/runtime/library.js:127:11167) at BookService.findAllBooks (/Users/wi/WebstormProjects/onebite-books-server-main/src/book/book.service.ts:27:12) at /Users/wi/WebstormProjects/onebite-books-server-main/node_modules/@nestjs/core/router/router-execution-context.js:46:28 at /Users/wi/WebstormProjects/onebite-books-server-main/node_modules/@nestjs/core/router/router-proxy.js:9:17
일코님, 안녕하세요. 오랜만에 질문 올립니다. 여러 장이 있는 hwp파일의 첫 페이지부터 한 페이지 씩 1.hwp, 2.hwp, 3.hwp, ... 로 저장하는 코드를 작성해 보았는데요. 한 가지 문제점만 빼면 원하는 대로 작동합니다. 한 가지 문제점은, 코드 실행 후 저장된 1.hwp 파일 속에 1페이지가 아닌 전체 페이지가 들어가 있다는 점입니다. 그거 외에 다른 페이지는 문제 없이 작동되고 있습니다. 이거 왜 그럴까요? 코드를 반복해서 살펴봐도, 논리적으로는 저장되는 1.hwp 파일에는 원본파일의 첫 페이지만 들어가 있어야 할 거 같은데.. 그렇게 안되는 이유가 궁금합니다. 전체 코드는 아래와 같습니다. import os from pyhwpx import Hwp hwp = Hwp() target_dir = r"D:\magicfolder" os.chdir(target_dir) hwp.add_tab() hwp.switch_to(0) # 탭0: 카피해 올 원본 파일용 hwp.open("D:\magicfolder\페이지분할대상.hwp") hwp.switch_to(1) # 탭1: 한 페이지씩 붙여서 저장할 일종의 작업공간 hwp.open("D:\magicfolder\페이지분할대상.hwp") hwp.switch_to(0) for j in range(1, hwp.PageCount + 1): hwp.goto_page(j) hwp.CopyPage() hwp.switch_to(1) hwp.HAction.Run("SelectAll") hwp.HAction.Run("Delete") hwp.MoveDocBegin() hwp.PastePage() # 바로 위에서 hwp.PastePage()할 때 페이지가 넘어가서 붙으므로, 앞 페이지로 당겨 붙이기 위해서 맨 위 페이지로 커서 옮기고 Del 2번 해 준 것임. hwp.MoveDocBegin() hwp.HAction.Run("Delete") hwp.HAction.Run("Delete") hwp.save_as(target_dir + "\\" + str(j) + ".hwp") hwp.switch_to(0) hwp.Close() hwp.FileClose() 코드를 많이 짜봐야 늘텐데 정말 오랜만에 시도해 본 거 같습니다. ^^ㅋ
안녕하세요. 강의를 마치고 혼자 구현을 해보고 있는데, 로그인과 인증 관련해서 궁금한 부분이 있습니다. 프론트에 로그인한 유저인지의 판단을 미들웨어에서 auth함수로 next 서버를 통해 하고있는데,로그인 후에 접속 가능한 페이지를 이동할때마다 무조건 서버에 체크를 해주어야 하나요? 데이터 페칭은 리액트 쿼리를 설명하며 말씀해주신것 처럼 컨텐츠에 따라 판단해서 캐싱하고 새로 받아오고의 개념이 이해가 되었는데, 세션체크라고 해야 할까요? 로그인 후에 이 유저가 로그인이 되어있는지에 대한 체크를 서버에 얼마나 자주 해주어야 하는지 모르겠습니다. 현재는 미들웨어에서 로그인이 필요한 페이지에 auth함수를 호출하여 프론트 서버에서 체크를 하고, api를 호출할때는 쿠키에 next-auth의 세션 토큰과 서버에서 발급한 세션 아이디를 담아서 서버에서 로그인과 인증 확인을 하고있는것으로 이해를 했습니다. 현재는 혼자서 nestjs를 통해 jwt 토큰 2개 (access,refresh)을 발급해서 구현을 해보고있는데, 로그인이 필요한 페이지로 이동한다면 무조건 미들웨어에서 토큰 확인을 서버를 통해 해주어야 하는건가 잘 모르겠어서 질문 드립니다.. 강의 정말 잘 듣고 도움이 많이 됐습니다. 감사합니다.
멀티체인 부분에서 chain1의 답변이.. 길게 나옵니다. 한 단어로 'future'라는 답변이 나와야 사실 chain2에 english_word라는 변수에 알맞는 값이 들어가는 걸텐데요. 문장으로 답이 나와서 이상한 상황입니다. 무슨 문제가 있어서 이렇게 invoke 결과값이 달라지는지 제가 뭘잘못했는지 모르겠습니다. 제 잘못이 아니라면 이게 무엇 때문인지, 어떻게 해결할 수 있을지 궁금합니다. (chain2도 답변을 영어로 하는 문제도 있습니다.)
질문은 많으시면 많을수록 좋습니다. 가능한 빠른 답변 드리겠습니다. 원활한 답변을 위해, 자세한 질문 사항 부탁드려요 😋 [33초] 각 단어에 맞는 영어 번역이 잘못된 것 같습니다. 환경 / 구성 / 설정 Environment / Configuration / Setting 로 이해하면 될까요?
안녕하세요! 수업 잘 듣고 있습니다. 수업 듣던 중 http://localhost:3000/book/34 와 같이 존재하지 않는 책의 상세 정보에 대한 요청에 대한 페이지까지 구현해보고 싶어 혼자 작성하다 문제가 생겨 질문 드립니다. http://localhost:12345/book/333 에서 자동적으로 오류 api 를 주는 것을 보고 해당 객체를 활용하려고 하였으나, id가 13 이상일 때부터는 [id].tsx 파일의 context.parms.id 가 undefiend로 반환되는 문제가 있습니다. 서버측의 문제인지, 제가 설정을 잘못한 건지 잘 모르겠어 질문 드립니다!