묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
포트폴리오 댓글 무한 스크롤
포트폴리오 과제에서 주셨던 무한 스크롤 리뷰가 오늘 강의에선 없네요! 혹시 이유가 있는걸까요?!그리고 백앤드에 하나의 게시판에 달려있는 댓글 갯수를 가져오는 api가 따로 없던데 퀴즈처럼 무한스크롤을 직접구현하는 건가요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
.eslintignore 관련 문의
안녕하세요.eslint와 prettier 설정 및 UI 프레임워크 강의 상에서는.eslintignore가 적용되지 않는데 혹시 추후 강의에 이 부분이 다시 언급되는지가 궁금해서 문의 남깁니다. 혹시 언급되지 않는다면 어떻게 처리하면 될까요?그리고 추가로 .eslintrc.js 파일 내용이 이전 강의랑 다른데 이건 왜 달라졌는지 알 수 있을까요?(이전 강의에서는 .eslintrc.js에 parser: @typescript-eslint/parser도 있었고, plugins에도 적용을 해주었던거 같은데 이번 강의에서는 다 빠져있어서 문의드립니다.)
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
front 인스턴스 퍼블릭 주소 접근 에러
안녕하세요 선생님..강의 따라 프론트 배포 후, aws인스턴스에 나와있는 퍼블릭 ip주소로 들어가서 프론트 서버가 실행되는지 확인해보니 연결을 거부했다는 창이 떴습니다.우분투에서 npm run build 해서 info - Generating static pages (4/4) info - Finalizing page optimization Page Size First Load JS ┌ λ / 2.04 kB 374 kB ├ /_app 0 B 105 kB ├ ○ /404 2.77 kB 108 kB ├ λ /hashtag/[tag] 1.54 kB 299 kB ├ ○ /login 1.89 kB 225 kB ├ ○ /newLook 14.3 kB 310 kB ├ λ /post/[id] 34 kB 345 kB ├ λ /post/allPosts 973 B 278 kB ├ λ /profile 180 B 365 kB ├ ○ /signup 5.97 kB 282 kB └ λ /user/[id] 2.75 kB 365 kB + First Load JS shared by all 105 kB ├ chunks/2eefa3dc3cc8f0c2cde672071668ef45dcb6f3dd.22cde6.js 28.1 kB ├ chunks/commons.7a84f9.js 11.5 kB ├ chunks/f0193db3.b49a15.js 69 B ├ chunks/framework.1daf1e.js 39.9 kB ├ chunks/main.8aa676.js 9.07 kB ├ chunks/pages/_app.6afac7.js 15.7 kB ├ chunks/webpack.eb080e.js 751 B ├ css/342ac7ff0ab1780a5748.css 72 kB └ css/4fae701701216c0faa95.css 198 B λ (Server) server-side renders at runtime (uses getInitialProps or getServerSideProps) ○ (Static) automatically rendered as static HTML (uses no initial props) ● (SSG) automatically generated as static HTML + JSON (uses getStaticProps) (ISR) incremental static regeneration (uses revalidate in getStaticProps)이렇게 빌드 하고, sudo npx pm2 start npm -- start위의 명령어를 입력하니까ubuntu@ip-172-31-15-140:~/My-Projects/fourthProject/front$ sudo npx pm2 start npm -- start npx: installed 184 in 13.279s [PM2] Spawning PM2 daemon with pm2_home=/root/.pm2 [PM2] PM2 Successfully daemonized [PM2] Starting /usr/bin/npm in fork_mode (1 instance) [PM2] Done. ┌─────┬────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐ │ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │ ├─────┼────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤ │ 0 │ npm │ default │ N/A │ fork │ 19231 │ 0s │ 0 │ online │ 0% │ 26.1mb │ root │ disabled │ └─────┴────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘터미널에 이런 창이 떴구요,sudo npx pm2 monit위의 명령어 입력하니까ubuntu@ip-172-31-15-140:~/My-Projects/fourthProject/front$ sudo npx pm2 monit npx: installed 184 in 7.952s ubuntu@ip-172-31-15-140:~/My-Projects/fourthProject/front$ npm run build > fahsionary@1.0.0 build /home/ubuntu/My-Projects/fourthProject/front > cross-env ANALYZE=true NODE_ENV=production next build Browserslist: caniuse-lite is outdated. Please run: npx browserslist@latest --update-db info - Using external babel configuration from /home/ubuntu/My-Projects/fourthProject/front/.babelrc Webpack Bundle Analyzer saved report to /home/ubuntu/My-Projects/fourthProject/front/.next/server/analyze/client.html Webpack Bundle Analyzer saved report to /home/ubuntu/My-Projects/fourthProject/front/.next/analyze/client.html info - Creating an optimized production build info - Compiled successfully info - Collecting page data [ ==] info - Generating static pages (0/4)watchSinUp [====] info - Generating static pages (1/4)watchSinUp 메인포스트: [] undefined [=== ] info - Generating static pages (1/4)watchSinUp undefined watchSinUp info - Generating static pages (4/4) info - Finalizing page optimization Page Size First Load JS ┌ λ / 2.04 kB 374 kB ├ /_app 0 B 105 kB ├ ○ /404 2.77 kB 108 kB ├ λ /hashtag/[tag] 1.54 kB 299 kB ├ ○ /login 1.89 kB 225 kB ├ ○ /newLook 14.3 kB 310 kB ├ λ /post/[id] 34 kB 345 kB ├ λ /post/allPosts 973 B 278 kB ├ λ /profile 180 B 365 kB ├ ○ /signup 5.97 kB 282 kB └ λ /user/[id] 2.75 kB 365 kB + First Load JS shared by all 105 kB ├ chunks/2eefa3dc3cc8f0c2cde672071668ef45dcb6f3dd.22cde6.js 28.1 kB ├ chunks/commons.7a84f9.js 11.5 kB ├ chunks/f0193db3.b49a15.js 69 B ├ chunks/framework.1daf1e.js 39.9 kB ├ chunks/main.8aa676.js 9.07 kB ├ chunks/pages/_app.6afac7.js 15.7 kB ├ chunks/webpack.eb080e.js 751 B ├ css/342ac7ff0ab1780a5748.css 72 kB └ css/4fae701701216c0faa95.css 198 B λ (Server) server-side renders at runtime (uses getInitialProps or getServerSideProps) ○ (Static) automatically rendered as static HTML (uses no initial props) ┌─ Process List ───────────────────┐┌── npm Logs ────────────────────────────────────────────────────────────────────┐ │[ 0] npm Mem: {#aN-fg} 0 MB ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ └──────────────────────────────────┘└──────────────────────────────────────────────────────────────────────────────────┘ ┌─ Custom Metrics ─────────────────┐┌─ Metadata ───────────────────────────────────────────────────────────────────────┐ │ ││ App Name npm │ │ ││ Namespace default │ │ ││ Version N/A │ │ ││ Restarts 15 │ │ ││ Uptime 0 │ │ ││ Script path /usr/bin/npm │ └──────────────────────────────────┘└──────────────────────────────────────────────────────────────────────────────────┘ left/right: switch boards | up/down/mouse: scroll | Ctrl-C: exit To go further check out https://pm2.io/ 이렇게 뜨던데..어디가 문제인가요?vim package.json 하니까 "scripts": { "dev": "next", "build": "cross-env ANALYZE=true NODE_ENV=production next build", "start": "cross-env NODE_ENV=production next start -p 80" },scripts부분은 이렇게 나왔습니다 aws에서 프론트 인스턴스의 보안그룹 인바운드 규칙은이렇게 구성했습니다.백서버는 ip주소로 들어가면 수업 내용과 같이 hello express가 보여서 잘 실행되고 있는걸 확인했습니다. config폴더에에서 confing.js로 backUrl로 백 주소 정의해서 교체도 진행했어요
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
model.findone() no longer accepts a callback 오류
findOne()도 save()와 마찬가지로 몽구스 5.0부터는 콜백함수를 지원하지 않기 때문에 기존에 app.post('/api/users/login',(req, res) =>{ // 요청된 이메일을 데이터베이스 찾기 User.findOne({email: req.body.email}, (err, docs) =>{ if(!docs){ return res.json({ loginSuccess: false, messsage: "제공된 이메일에 해당하는 유저가 없습니다." }) } // 요청된 이메일이 DB에 있다면 Password가 일치한지 확인 user.comparePassword(req.body.password, (err, isMatch) => { if(!isMatch) return res.json({loginSuccess: false, messsage: "비밀번호가 틀렸습니다."}) // Password가 일치하다면 토큰 생성 user.generateToken((err, user)=>{ if(err) return res.status(400).send(err); // 토큰을 저장 res.cookie("x_auth", user.token) .status(200) .json({loginSuccess: true, userId: user._id}) }) }) }) })에서 콜백함수가 들어가 있기 때문에 callback을 쓰지 않고 promise 또는 async/await로 수정해서 사용하시면 됩니다.저같은 경우는 promise로 수정해서 .then .catch로 수정을 했습니다.app.post('/api/users/login',(req, res) =>{ // 요청된 이메일을 데이터베이스 찾기 User.findOne({email: req.body.email}) .then(docs=>{ if(!docs){ return res.json({ loginSuccess: false, messsage: "제공된 이메일에 해당하는 유저가 없습니다." }) } docs.comparePassword(req.body.password, (err, isMatch) => { if(!isMatch) return res.json({loginSuccess: false, messsage: "비밀번호가 틀렸습니다."}) // Password가 일치하다면 토큰 생성 docs.generateToken((err, user)=>{ if(err) return res.status(400).send(err); // 토큰을 저장 res.cookie("x_auth", user.token) .status(200) .json({loginSuccess: true, userId: user._id}) }) }) }) .catch((err)=>{ return res.status(400).send(err); }) })참고하시고 수정하시면 될 것 같습니다.
-
해결됨웹 게임을 만들며 배우는 React
제로초님 안녕하세요!! setInterval clearInterval 실행위치 부탁드립니다.
제로초님 안녕하세요!! setInterval clearInterval 실행위치 부탁드립니다. import { useRef, useEffect } from 'react';function useInterval(callback, delay) {const savedCallback = useRef();useEffect(() => {savedCallback.current = callback;});useEffect(() => {function tick() {savedCallback.current();}if (delay !== null) {let id = setInterval(tick, delay);return () => clearInterval(id); 요부분!!}}, [delay]);return savedCallback.current;}export default useInterval;질문1. if문에서 return에 단지 익명함수를 작성하고 그 익명함수의 return으로 clearInterval 을 적어준건데 왜 익명함수가 실행되어 clearInterval이 등록이되는건가요?? if의 함수의 리턴값이 익명함수의 주소아닌가요?질문2. if에서 reutnrn에 익명함수가 실행되었고 clearinterval이 등록되었다고 치면 왜 delay가 빠꼈을때 실행되는거에요?? ㅠㅠ부탁드립니다. 이해하고싶어요 4시간째 구글링하고 찾아봐도 이해가안되네요..다른분답변에서 setInterval 500으로 실행되면서 return쪽 clearInterval 코드도 등록됩니다. 이 부분도 왜 등록이 되는건가요?ㅠ
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
401 오류
쿠키 세션과 전체 로그인 흐름 강의 까지 들었습니다. 안녕하세요. 로그인시 401 오류가 생겨서 해결을 못하고 있습니다. user saga 에서 logInAPI랑 logIn 부분에서 error가 생기고 있는거 같은데 이유를 찾지 못했습니다.아래에 비슷한 질문이 있길래 봤더니 json 형식으로 axios.post 해줘야 한다고 하시는 거 같은데 이해를 못하겠습니다... 조금 더 길게 설명해 주실 수 있을까요?
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
회원가입 페이지 기능생성 질문입니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. docker compose up 을 작성했는데이런식으로 나와서 연결이 된건지 안된건지 모르겠습니다.오류문구가 뜨지는 않지만 회원가입 눌렀을때 백엔드 문구가 뜨지 않아서 연결이 안된거 같아 문의드려봅니다.혹시 어느 부분이 잘못된건지 알수 있을까요?[+] Running 1/0⠿ Container postgres Running 0.0sAttaching to postgres
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
GraphQL 목록 삭제가 실시간으로 반영되지 않아요
import { gql,useMutation,useQuery } from "@apollo/client" import styled from "@emotion/styled" const FETCH_PRODUCT = gql` query fetchBoards($page:Int){ fetchBoards(page:$page){ writer title contents number } } ` const FETCH_DELETE = gql` mutation deleteBoard($number:Int){ deleteBoard(number:$number){ message } } ` const Row = styled.div` display:flex; ` const Column = styled.div` width: 25%; ` export default function StaticRoutedPage(){ const{data}=useQuery(FETCH_PRODUCT, {variables:{ page:2 }}) const[deleteBoard]= useMutation(FETCH_DELETE) console.log(data?.fetchBoards) const onClickDelete= async (event)=>{ await deleteBoard({ variables:{ number: Number(event.target.id) }, refetchQueries:[{query: FETCH_PRODUCT}] }) } return ( <> {data?.fetchBoards?.map((el)=>( <Row> <Column><input type="checkbox"/></Column> <Column>{el.number}</Column> <Column>{el.title}</Column> <Column>{el.contents}</Column> <Column> <button id={el.number} onClick={onClickDelete}>삭제</button> </Column> </Row>))} </> ) }
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
로그인 섹션 이후 리뷰 및 완성코드
안녕하세요,중고마켓을 진행하게 되는 로그인 섹션부터는포트폴리오 리뷰가 진행되지 않는다고 하셨는데,완성코드도 제공이 되지 않는걸까요?제공이 되지 않는다면 모르는 부분에 대해선코드수정과 리뷰는 어떻게 알 수 있을까요??
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
back에 mysql설치 중 뜬 메시지 질문
안녕하세요 선생님. 우분투(back)에 mysql 설치 커맨드를 강의 따라 입력하다가터미널 창에 아래와 같은 메시지가 떴는데우분투가 mysql에 지원되지 않는 서버라고...?? 목록에 있는 시스템 중 하나를 선택하라고 하는데 이때 뭘 선택해야 하나요? 명령어 sudo dpkg -i mysql-apt-config_0.8.13-1_all.deb 입력하니까 저런게 나왔어요.우분투 22.04 LTS 입니다.mysql --version 하니까mysql Ver 8.0.32-0ubuntu0.22.04.2 for Linux on x86_64 ((Ubuntu))이렇게 나오던데 계속 진행해도 될까요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
infinite-scroller 무한 스크롤
선생님 안녕하세요... 정말 열심히 하였지만 무한 스크롤 때문에 정말 머리가 터질것같습니다.. 댓글 한번만 작성 했는데... 사진처럼 여러개가 나옵니다 해결 방법이 있을까요ㅠㅠㅠ
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
Prettier 적용 오류
다른 때에는 prettier가 잘 동작하는데useQuery, useMutation Hook에 type을 지정하면 prettier가 잘 작동하지 않습니다.useQuery에 타입을 지정하지 않거나, 코드를 주석처리하면 prettier가 잘 작동합니다.const { data, refetch } = useQuery<Pick<IQuery, "fetchBoards">, IQueryFetchBoardsArgs>(FETCH_BOARDS);
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
회원가입 폼 과제 정답
안녕하세요, 혹시 강의에 나와 있는 회원가입 폼 피그마로 되어 있는 부분 정답지는 따로 알 수 없는걸까요 선생님?
-
미해결만들면서 배우는 리액트 : 기초
고양이 이미지 링크 깨짐 문의
7.JSX로 ~ 강의 5분쯤 진행하니 이런 에러가 납니다고양이 이미지 링크가 깨지는 문제인걸로 보여지는거 같아서..이런 경우 다른 이미지로 실습을 진행할 수 있게끔 하고 싶은데 다른 방법이 없나요? 로컬 PC의 이미지로 대체하려고 했더니 그것도 오류가 납니다.=> Not allowed to load local resource: file:///C:/Users/사용자명/Desktop/이미지파일명.jpg
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 유튜브 사이트 만들기
해당 오류 해결 방법 좀 알려주세요 ㅠㅠ
위의 오류 해결방법좀 알려주세요 ㅠ
-
미해결따라하며 배우는 리액트, 파이어베이스 - 채팅 어플리케이션 만들기[2023.12 리뉴얼]
Favorite.js 질문입니다.! 화면 새로고침하면, 추가한 Favorite chatrooms가 날라가고 딱 1개만 남습니다!
Favorite.js 질문입니다.! 화면 새로고침하면, 추가한 Favorite chatrooms가 날라가고 딱 1개만 남습니다! MessageHeader에서 채팅방 하트 꾸욱 눌러 favorite에 넣으면,SidePanel에 Favorite이 업데이트되어 채팅방이 입력됩니다.Favorite 채팅방 목록 나오고, 개수까지 다 잘 나와요;잘 됩니다. 하지만, F5 새로고침을 누르면 Favorite에는 결국, 1개의 채팅방만 나오고 나머지는 싹 다 날라갑니다.최초에 파이어베이스에서 채팅방목록을 모두 못불러오는것 같아요.코드 수정을 해야할 것 같은데요,작성해주신 코드를 보면 잘못된건 없는것 같은데 왜 그럴까요?
-
미해결따라하며 배우는 리액트 네이티브 기초
svg 파일을 다운 받았는데 계속 에러가 납니다...
svg 파일을 다운 받았는데 계속 에러가 납니다... import 부분도 확인을 해보았는데 오타도 없고 경로도 틀리지 않았는데 계속 아래와 같은 에러가 발생합니다.혹시 몰라 svg 파일을 다른 곳에 옮겨 import를 해보았는데 결과는 똑같았습니다. 어떻게 해야될까요 ..?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
apollo-upload-client 설정 시 uploadLink 부분 질문이 있습니다.
강의 명: 이미지 업로드 프로세스 이해 및 실습 시간대: 1시간 1분 35초쯤 해당 부분에서 uploadLink를 넣으실 때 에러가 안뜨시던데저는 위와 같은 타입 에러가 뜹니다. (모든 에러 구문은 마지막 부분에 있습니다)물론 타입스크립트 apollo-client-upload의 타입스크립트 부분도 다운로드 받았습니다.TS 에러라 실제 업로드 기능 테스트에는 문제가 없었지만 저만 에러가 뜨는 것 같아서 찝찝한 마음에 질문을 올려봅니다.버전 차이일까요? (일단 uploadLink 변수 뒤에 any를 붙여주면 컴파일 에러가 사라지긴 했습니다.) 사용 중인 버전{ "name": "class", "version": "0.1.0", "private": true, "scripts": { "dev": "next dev", "build": "next build", "start": "next start", "lint": "next lint", "generate": "graphql-codegen" }, "dependencies": { "@ant-design/icons": "^5.0.1", "@apollo/client": "^3.6.9", "@emotion/react": "^11.10.0", "@emotion/styled": "^11.10.0", "@material-ui/core": "^4.12.4", "@next/font": "13.1.2", "antd": "^4.22.8", "apollo-upload-client": "^17.0.0", "axios": "^0.27.2", "graphql": "^16.6.0", "next": "12.1.0", "react": "17.0.2", "react-daum-postcode": "^3.1.1", "react-dom": "17.0.2", "react-infinite-scroller": "^1.2.6" }, "devDependencies": { "@graphql-codegen/cli": "^3.0.0", "@graphql-codegen/typescript": "^3.0.0", "@types/apollo-upload-client": "^17.0.2", "@types/node": "17.0.2", "@types/react": "17.0.2", "@types/react-infinite-scroller": "^1.2.3", "@typescript-eslint/eslint-plugin": "^5.0.0", "eslint": "^8.0.1", "eslint-config-prettier": "^8.6.0", "eslint-config-standard-with-typescript": "^34.0.0", "eslint-plugin-import": "^2.25.2", "eslint-plugin-n": "^15.0.0", "eslint-plugin-promise": "^6.0.0", "eslint-plugin-react": "^7.32.2", "prettier": "2.8.4", "typescript": "*" }, "resolutions": { "@types/react": "17.0.2" } } 설정 코드에러 내용 전문const uploadLink: ApolloLink'ApolloLink' 형식은 'ApolloLink | RequestHandler' 형식에 할당할 수 없습니다.'import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@types/apollo-upload-client/node_modules/@apollo/client/link/core/ApolloLink").ApolloLink' 형식은 'import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@apollo/client/link/core/ApolloLink").ApolloLink' 형식에 할당할 수 없습니다.'split' 속성의 형식이 호환되지 않습니다.'(test: (op: import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@types/apollo-upload-client/node_modules/@apollo/client/link/core/types").Operation) => boolean, left: import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@types/apollo-upload-client/node_modules/@apollo/client/link/cor...' 형식은 '(test: (op: import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@apollo/client/link/core/types").Operation) => boolean, left: import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@apollo/client/link/core/ApolloLink").ApolloLink | import("c:/Users/PC/Desktop/real_project/study/clas...' 형식에 할당할 수 없습니다.'left' 및 'left' 매개 변수의 형식이 호환되지 않습니다.'import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@apollo/client/link/core/ApolloLink").ApolloLink | import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@apollo/client/link/core/types").RequestHandler' 형식은 'import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@types/apollo-upload-client/node_modules/@apollo/client/link/core/ApolloLink").ApolloLink | import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@types/apollo-upload-client/node_modules/@apollo/client/link/core/types").RequestHandler' 형식에 할당할 수 없습니다.'ApolloLink' 형식은 'ApolloLink | RequestHandler' 형식에 할당할 수 없습니다.'import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@apollo/client/link/core/ApolloLink").ApolloLink' 형식은 'import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@types/apollo-upload-client/node_modules/@apollo/client/link/core/ApolloLink").ApolloLink' 형식에 할당할 수 없습니다.'split' 속성의 형식이 호환되지 않습니다.'(test: (op: import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@apollo/client/link/core/types").Operation) => boolean, left: import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@apollo/client/link/core/ApolloLink").ApolloLink | import("c:/Users/PC/Desktop/real_project/study/clas...' 형식은 '(test: (op: import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@types/apollo-upload-client/node_modules/@apollo/client/link/core/types").Operation) => boolean, left: import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@types/apollo-upload-client/node_modules/@apollo/client/link/cor...' 형식에 할당할 수 없습니다.'right' 및 'right' 매개 변수의 형식이 호환되지 않습니다.'import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@types/apollo-upload-client/node_modules/@apollo/client/link/core/ApolloLink").ApolloLink | import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@types/apollo-upload-client/node_modules/@apollo/client/link/core/types").RequestHandle...' 형식은 'import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@apollo/client/link/core/ApolloLink").ApolloLink | import("c:/Users/PC/Desktop/real_project/study/class/node_modules/@apollo/client/link/core/types").RequestHandler | undefined' 형식에 할당할 수 없습니다.'ApolloLink' 형식은 'ApolloLink | RequestHandler | undefined' 형식에 할당할 수 없습니다.ts(2322) 감사합니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
try/catch 내 error 관련 질문이 있습니다.
안녕하세요 멘토님, 항상 양질의 강의 잘 듣고 있습니다. 저번에 질문 올리려다 까먹고 못 올렸다가 다시 기억나서 올리는 질문입니다.try/catch 구문에서 error.message는 graphql 에서 예외처리 될 때 보내지는 에러 메시지인지아니면 graphql이 아닌 백단 부분(node 코드) 같은 곳에서 예외처리 되어 보내지는 에러 메시지인지 궁금합니다.수업 때 들은 기억으로는 error 객체가 백엔드에서 보내주는 에러에 대한 정보라고만 들었던 것 같은데, 궁금하여 질문 올립니다. 감사합니다.
-
해결됨만들면서 배우는 리액트 : 기초
현재 MDN 사이트의 using fetch부분을 사용하면 에러가 나오네요
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강의의 코드와 조금 다르지만, 사이트에 있는 코드를 사용하면 에러가 나네요 .. ㅠㅠㅠ 그래도 강의에서 사용하신 코드를 입력하면 제대로 나오긴 하는데.. 왜 그런건지 잘 모르겠습니다.