티스토리 뷰
리액트 16의 세 번째 멋진 기능은 Error Boundaries이다. 직역하면 에러 경계이다. 이건 컴포넌트 자식의 에러를 관리할 수 있게 해 준다. 만약 포털이 에러를 만들면, 앱으로 관리할 수 있다. return types을 에러로 만들면, 동일하게 관리할 수 있다. 정상 작동할 경우에는 자식의 에러에만 한정된다.
ErrorMaker 컴포넌트를 만들고 freinds에 몇 가지 이름을 넣어보자. 아래와 같이 렌더가 정상적으로 되었다. 이제 에러를 발생시켜보자.
componentDidMount에서 setTimeout을 사용하여 1초 후 friends에 undefined를 할당해보자.
개발을 하다 보면 일반적이고 흔히 볼 수 있는 화면이다. 하지만 이런 화면은 사용자 입장에서는 불편하다. 에러를 잡아보자.
에러를 주고 에러 정보도 받을 수도 있다. console.log로 확인해 보면 에러를 구분하고 에러를 대응할 수 있다.
예시로 에러를 일부러 만들어 catch 해 보았다. 에러가 실제 발생하였지만 사용자는 간단한 메시지와 함께 어플리케이션은 정상 작동할 것이다.
하지만 모든 에러를 아래와 같이 catch하는 것은 비 효율적이다.
에러를 효율적이게 catch 하기위해서는 higher-order component로 원하는 컴포넌트에 대한 에러를 제어 할 수 있다.
컴포넌트에서 컴포넌트를 리턴하는 구조이다. BoundaryHOC를 통해 컴포넌트를 랩핑하고 있다. HOC에 의해 컴포넌트가 보호된다.
'프로그래밍 > Front end' 카테고리의 다른 글
[Front end] 바닐라 자바스크립트 기초 #1 Variable, Data Types (0) | 2019.11.09 |
---|---|
[Front end] React 16 #5 set State null (0) | 2019.11.06 |
[Front end] React 16 #3 portals (0) | 2019.10.12 |
[Front end] React 16 #2 return type (0) | 2019.10.12 |
[Front end] React 16 #1 (0) | 2019.10.09 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
링크
TAG
- 프로그래머스
- effective java
- Maven
- 소프트웨어공학
- 이직
- 오라클
- 자바
- Linux 명령어
- 자바스크립트
- 제주도 3박4일 일정
- 개발환경
- React
- 성능분석
- Tomcat
- javascript
- 리눅스 명령어
- SQL
- Collection
- 리액트
- 경력관리
- 프로그래머
- 오라클 내장 함수
- 정렬 알고리즘
- 제주도 여행
- spring
- 회고
- Eclipse
- 리액트 16
- sort algorithm
- Java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함