All files / src/chap05 LazyBasic.js

0% Statements 0/7
100% Branches 0/0
0% Functions 0/5
0% Lines 0/3

Press n or j to go to the next uncovered block, b, p or k for the previous block.

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 32 33 34                                                                   
import { Suspense, lazy } from 'react';
 
// ms 밀리초의 지연을 발생시키는 sleep 함수
const sleep = ms => new Promise(resolve => setTimeout(resolve, ms));
// LazyButton 지연 로드
const LazyButton = lazy(() => sleep(2000).then(() => import('./LazyButton')));
 
export default function LazyBasic() {
  // LazyButton이 로딩될 때까지 메시지를 표시한다.
  return (
    <Suspense fallback={<p>Now Loading...</p>}>
      <LazyButton />
    </Suspense>
  );
}
 
 
// import { Suspense, lazy } from 'react';
// import MyLoading from './MyLoading';
 
// // ms 밀리초의 지연을 발생시키는 sleep 함수
// const sleep = ms => new Promise(resolve => setTimeout(resolve, ms));
// // LazyButton 지연 로드
// const LazyButton = lazy(() => import('./LazyButton'));	
 
// export default function LazyBasic() {
//   // LazyButton이 로딩될 때까지 메시지를 표시한다.
//   return (
//     // 대기 상태에서는 MyLoading 컴포넌트를 표시한다.
//     <Suspense fallback= {<MyLoading />}>
//       <LazyButton />
//     </Suspense>
//   );
// }