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

킹덤시즌2님의 프로필 이미지
킹덤시즌2

작성한 질문수

누구든지 하는 리액트: 초심자를 위한 react 핵심 강좌

LifeCycle API 소개 및 사용법 (ii)

componentDidCatch() 부분에서 크로쓰 오리진 에러가 뜹니다.

작성

·

275

1

componentDidCatch() 부분에서 저는 크로쓰 오리진 에러가 뜨네요... A cross-origin error was thrown. React doesn't have access to the actual error object in development. See https://fb.me/react-crossorigin-error for more information. 뭐가 문제인지 알 수 있을까요? (코드 https://codesandbox.io/s/5klql536vk)

답변 1

2

 App 컴포넌트 마운팅 과정에서 호출되는 render에서 자식 컴포넌트인 MyComponent의 render를 호출하게됐고 그 과정에서 에러가 발생해서 마운팅을 성공하지 못하고 App클래스의 componentDidMount에서 getBoundingClientRect() 정보를 호출하니 이곳에서 에러가 발생한것 같습니다. 강사님 말로는 부모 컴포넌트에서 에러를 잡을 수 있다고 했으니 App컴포넌트에서 발생한 에러를 App 컴포넌트 내 componentDidMount  에서 잡는게 안되서 문제가 된것 같습니다. 

임시 방편으로 주석처리하면 우선 componentDidMount  에서 에러가 발생하지 않아 componentDidCatch호출이 가능했습니다.

// console.log(this.myDiv.getBoundingClientRect());

킹덤시즌2님의 프로필 이미지
킹덤시즌2

작성한 질문수

질문하기