[CodeCamp-Week 1] try ~ catch

·2022년 7월 8일
0

어제 정신없이 GraphQL-API로 Mutation, Query하는 방법을 배웠는데
바로 화면을 바꿔주는 Routing을 배웠다.
라우팅이란 단어 처음 보고 샤우팅 밖에 생각이 안났다...ㅋ
공부하기 싫을 땐 소리질러~~!
(죄송해요 멘토님 이런 딴생각하는 저라서..)

들어가기

Router란?

라우터란, 페이지 이동 기능을 제공하는 객체이다.
A 페이지에서 B 페이지로 이동하는 것을 'B 페이지로 라우팅한다' 라고 한다.

A 페이지에서 Mutation을 했다면 B 페이지에서는 Query를 실행하여 A 페이지 정보를 B 페이지에서 보여줄 수 있다.
다만, A 페이지에서 Mutation하는 과정에서 백엔드 컴퓨터 문제, 수정 게시물 삭제 등의 실패가 발생할 수 있다.

try ~ catch 사용하기

위에서 말한 바와 같이, Mutation이 실패하는 경우가 종종 있을 수 있다.
Mutation이 실패하였음에도 아무런 알림 없이 B 페이지로 라우팅된다면 웹페이지 사용자는 B 페이지에서 Query가 왜 안되는지 의문이 들 것이다.
따라서 Mutation이 실패할 경우 웹페이지에서 알림을 줄 필요가 있다.
이러한 알림을 try ~ catch를 사용하여 줄 수 있다!

try ~ catch 란?

try ~ catch 는 mutation 성공 시 처리사항과 실패 시 처리사항을 나눠준다.
try에는 성공 시 처리사항을, catch에는 실패 시 처리사항을 써준다.

예시 살펴보기

try {
	await createBoard({
    	variables: {
        	a: "짱구",
            b: "안녕",
            c: "안녕하세요"
         }
     })
   } catch (error) {
   	alert (error.message)  //error.message는 백엔드에서 보내주는 실패메세지이다!
  }
   
profile
개발을 개발새발 열심히➰🐶

0개의 댓글