mcpField
B
bundle-dynamic-imports

bundle-dynamic-imports

github.com/theorcdev開発2.1k39 回インストール2 日前に更新
リポジトリ

bundle-dynamic-imports について

Next.js で next/dynamic を使い、大きなコンポーネントを初期表示用のバンドルから分けて遅延読み込みする方法です。コンポーネントを必要時に読み込みたいフロントエンド開発者向けです。

主な機能

  1. 01next/dynamic による遅延読み込み
  2. 02大型コンポーネントのオンデマンド読み込み
  3. 03サーバーサイドレンダリングの無効化設定

活用シーン

  1. 01Monaco Editor のオンデマンド読み込み
  2. 02初期メインバンドルからコンポーネントを除外

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/theorcdev/8bitcn-ui --skill bundle-dynamic-imports

インストール後、Claude Code で/bundle-dynamic-importsを入力して読み込まれたか確認します。

詳細

大きなコンポーネントの動的インポート

初回レンダリングで必要のない大きなコンポーネントは、next/dynamic を使用して遅延読み込みします。

誤り(Monaco がメインチャンクにバンドルされ、約 300KB になります):

import { MonacoEditor } from './monaco-editor'

function CodePanel({ code }: { code: string }) {
  return <MonacoEditor value={code} />
}

正しい例(Monaco を必要に応じて読み込みます):

import dynamic from 'next/dynamic'

const MonacoEditor = dynamic(
  () => import('./monaco-editor').then(m => m.MonacoEditor),
  { ssr: false }
)

function CodePanel({ code }: { code: string }) {
  return <MonacoEditor value={code} />
}

コメント