Docs
활용하기
코드 스플리팅

코드 스플리팅

액티비티별로 코드 스플리팅 후 전환 효과를 올바르게 렌더링하려면 다음과 같이 설정해야 해요.

// as-is:
import { lazy } from "react";
import { stackflow } from "@stackflow/react";
 
stackflow({
  // ...
  components: {
    MyActivity: lazy(() => import("./activities/MyActivity")),
  },
});
 
// to-be:
import { stackflow, lazy } from "@stackflow/react";
 
stackflow({
  // ...
  components: {
    // `@stackflow/react`에서 제공하는 `lazy()`로 교체해요
    MyActivity: lazy(() => import("./activities/MyActivity")),
  },
});

이는 해당 JS 에셋을 가져오는 동안(Promise가 pending 상태인 동안) 스택 상태 변경을 일시 중지하고, 로딩이 완료되면 다시 상태 변경을 재개하기 위해서에요.