OpenAINext.js2020/01/15 19:37

Next.js 9.2

要点だけを先に読めるように短く再構成したセクションです。

元記事

Quick Digest

要約

要点だけを先に読めるように短く再構成したセクションです。

openaijamodel: gpt-5-mini-2025-08-07

Next.js 9.2 リリース概要

Key Points

  • ネイティブでグローバルCSSをインポート
  • `.module.css` によるCSS Modules対応
  • HTTP/2活用の新チャンク分割で高速化

Summary

Next.js 9.2 はエンジニア向けに以下を導入しました:ネイティブのグローバルCSSインポート、コンポーネント単位のCSS Modules(.module.css)、HTTP/2を活用した改善されたチャンク分割、そしてキャッチオール動的ルート。すべて後方互換で、アップグレードはパッケージを最新にするだけです。

Key Points

  • グローバルCSSのネイティブサポート:グローバルな .csspages/_app.js 内でインポートする(例:import '../styles.css')。開発時はホットリロード、 本番は単一の最小化された .css に連結され <link> で読み込まれる。
  • CSS Modules:[name].module.css を使うとローカルスコープのクラス名が生成され、任意の場所からインポート可能。グローバルCSSと併用可(.module.css のみモジュール化される)。
  • 改善されたチャンク分割:HTTP/2 を活用してより多くの小さなチャンクを生成。最小ページチャンク、frameworkチャンク、160KB超のライブラリチャンク、commons、共有チャンク、ランタイム等に分割され、初期ロードとナビゲーションでの転送量を削減。
  • キャッチオール動的ルート:pages/post/[...slug].js のように [...] 構文で /post/a/b/c をマッチさせ、router.query.slug は配列で受け取れる。
  • 後方互換:@zeit/next-css 等のプラグインを使っている場合は競合を避けるため削除を推奨。既存コードの変更は不要で恩恵を受けられる。

Upgrade

  • アップグレードコマンド:npm i next@latest react@latest react-dom@latest

Practical notes

  • グローバルCSSは必ず pages/_app.js でのみ読み込むこと(順序・競合回避のため)。
  • コンポーネント単位のスタイルは .module.css を使い、import styles from './Comp.module.css' として className={styles.foo} を使用。
  • 大きな依存は自動的に別チャンク化されるため、バンドル最適化のための明示的な設定は不要だが、ビルド結果はプロファイリングして確認すること。

Full Translation

翻訳

原文の流れを保ったまま読める翻訳セクションです。

openaijamodel: gpt-5-mini-2025-08-07

Next.js 9.2 の紹介

Next.js 9.2

Next.js 9.2 は、以下を含む主要な機能強化を導入します。

  • CSS のネイティブサポート — 外部の追加設定なしで CSS を直接インポートして使用できるネイティブサポート。
  • より積極的なコード分割 (aggressive code-splitting) — バンドルを細かく分割して初期読み込みを高速化します。
  • catch-all 動的ルート — 1つのページファイルで任意の数のパスをキャッチできる動的ルーティングをサポートします。
  • その他 — パフォーマンスや開発体験の改善など、ほかにも多くの改善が含まれます。
Next.js 9.2 の紹介 | Next.js | DocsDigest