인프런 커뮤니티 질문&답변

반가우면반갑다고해님의 프로필 이미지

작성한 질문수

GraphQL 완전정복 (키오스크를 만들며 배우는 풀스택 과정) - [2024 부분 리뉴얼]

디자인 요소 배치

섹션7 디자인요소배치 이후 흰색화면..

해결된 질문

24.07.26 01:16 작성

·

68

0

선생님 안녕하세요,

섹션7 디자인요소배치 코드를 따라쳤으나

흰색 화면이 떠서 문의드렸습니다.

https://github.com/jungsikjeong/smart-menu-study

제가 여태까지 작성한 코드인데요.. 혹시 실수한 부분이있을까요?..

선생님 강의 영상 코드랑 계속 대조해보기도하고,

선생님 깃허브 코드랑 비교도해보고있는데..

쉽지않네요..

답변 1

1

Indie Coder님의 프로필 이미지
Indie Coder
지식공유자

2024. 07. 26. 12:10

작성하신 apollo-client.js 에 몇군대 오타가 있는 것 같습니다 우선 httprLink라는 import를 지우고(아마도 httpLink를 잘 못 표기한 것 같습니다. ),authLink에서 ApolloClient라고 되어 있는 곳을 ApolloLink로 변경하시기 바랍니다.
import {
  ApolloClient,
  InMemoryCache,
  split,
  HttrpLink, // 이부분 삭제 
  ApolloLink,
  from,
  HttpLink,
} from '@apollo/client'
import { GraphQLWsLink } from '@apollo/client/link/subscriptions'
import { getMainDefinition } from '@apollo/client/utilities'
import { createClient } from 'graphql-ws'

const httpLink = new HttpLink({
  uri: 'http://localhost:3000/graphql',
})

const wsLink = new GraphQLWsLink(
  createClient({
    url: 'ws://localhost:3000/graphql',
  }),
)

// 다음 ApolloClient를 ApolloLink로 변경
const authLink = new ApolloClient((operation, forward) => {
  return forward(operation)
})

// 분기처리 서버쪽에서 subscription를 구독하는거면 true를 리턴해서 wsLink로 연결해줌
const link = split(
  ({ query }) => {
    const { kind, operation } = getMainDefinition(query)
    return kind === 'OperationDefinition' && operation === 'subscription'
  },
  wsLink,
  httpLink,
  //   uploadLink
)

const client = new ApolloClient({
  link: from([authLink, link]),
  cache: new InMemoryCache(),
})

export default client
반가우면반갑다고해님의 프로필 이미지

2024. 07. 27. 19:27

아 감사합니다 .prettierrc만 적용하고 eslint는적용안시키고 강의 따라했더니 이런 실수가있었네요..

그리고 말씀하신

authLink에서 ApolloClient로 바꿔주니까 잘되네요!

정말감사합니다