Skip to content

[ 4주차 ] Hydrate에서의 불일치 정리(논의사항) #12

@hoongding

Description

@hoongding

주제

Hydrate에서의 불일치가 일어나면 어떻게 될까?

선정 이유

아래 278쪽의 내용의 애매함이 있어 논의를 했다.

  • 두번 렌더링이 일어나는 것이, 리액트 렌더링인지 브라우저 렌더링인지 헷갈린다.
  • 결국 hydrate는 서버에서 HTML을 만들고, 클라에서는 그 HTML을 검증하기 위해 리액트 렌더링을 하는데, 어떤 상황에서든 hydrate를 하면 두번 렌더링 되는게 맞는것 아닌가?

책 내용 (p278)

hydrate 작업은 단순히 이벤트나 핸들러를 추가하는 것 이외에도 렌더링을 한번 수행하면서 hydrate가 수행한 렌더링 결과물 HTML과 인수로 넘겨받은 HTML을 비교하는 작업을 수행하기 때문이다. 여기서 발생한 불일치가 바로 에러의 원인이며 불일치가 발생하면 hydrate가 렌더링한 기준으로 웹페이지를 그리게 된다.
이렇게 렌더링을 하는 것은 사실상 서버와 클라이언트에서 두번 렌더링을 하게 되고, 결국 SSR의 장점을 포기하는 것이다.

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions