
SSR에서의 top-level await의 동작
·
Node
SSR환경에서 top-level await가 있을 때는 어떻게 동작하는지에 대해 학습한 내용 정리입니다. top-level await란?일반적인 await는 함수 바깥(최상단 스코프)에서는 사용 불가하고 async 함수 내부에서만 실행됩니다. top-level await는 비동기적으로 동작하는 ESM 환경에서 모듈 최상단에서 await를 쓰는 문법을 뜻합니다. 문제SSR환경에서 서버는 모든 JS모듈을 즉시 평가할 수 있어야 합니다. 여기서 top-level await가 모듈 내에 있다면? 해당 await가 완료되고 Promise가 반환될 때까지 서버는 대기상태가 됩니다. 이는 직관적으로 바라볼 때 사용자에게 대기 시간만큼의 로딩 시간으로 다가오고 사용자 경험이 떨어지게 됩니다.import { Page }..