openaijamodel: gpt-5-mini-2025-08-07
Next.js 5 リリース: ユニバーサルWebpack、CSSインポート、プラグイン、Zones
Key Points
- ユニバーサルWebpack対応
- CSS/TS読み込みをプラグインで簡単導入
- Zonesでマイクロアプリを結合
Summary
Next.js 5 が公開されました。サーバーとクライアントで共通のWebpackパイプライン(ユニバーサルWebpack)を採用し、CSS/プリプロセッサやTypeScriptの読み込みが容易になり、プラグイン経由で拡張可能になっています。アップグレードは npm i next@latest react@latest react-dom@latest を実行してください。
Key Points
- ユニバーサルWebpack
- サーバー/クライアント両方でWebpackが動作。
next.config.jsのデコレータにisServerが渡されます(例:webpack(config, { dev, isServer }))。既存のWebpackローダーがそのまま使用可能。
- サーバー/クライアント両方でWebpackが動作。
- CSS とプリプロセッサ
import './index.css'が可能。必要なローダーはピア依存として追加(例:css-loader,style-loader,postcss-loader)。簡単に導入するにはnext-cssのようなプラグインを利用:const withCss = require('next-css'); module.exports = withCss({...});。
- TypeScript サポート
ts-loaderを使った設定で即時利用可。プラグインnext-typescriptで簡潔に導入できる。
- プラグイン設計
- プラグインは設定をデコレートする関数。既存のプラグイン(next-css, next-sass, next-less, next-typescript, @zeit/next-preact 等)を組み合わせて使える。
- Zones(マイクロアプリ連携)
- パスベースで複数のNext.jsアプリを親ドメインに結合可能。ルールJSONと
now alias -r rules.json my-domain.comなどで運用。ローカル用にmicro-proxyも公開。
- パスベースで複数のNext.jsアプリを親ドメインに結合可能。ルールJSONと
- ビルドとキャッシュ改善
- 大規模アプリでの
next buildが約23.6%高速化。動的importのバンドル名がコンテンツアドレス(ハッシュ)化され、デプロイ間で再ダウンロードを減らす。
- 大規模アプリでの
- 本番ソースマップ
- 本番で外部ソースマップを有効にするには
if (!dev) config.devtool = 'source-map'を設定。
- 本番で外部ソースマップを有効にするには
実務的な注意点
- 既存の
next.config.jsを確認し、webpackデコレータのシグネチャにisServerやdefaultLoadersが追加されている点を反映してください。 - ローダーはプロジェクトで明示的にインストール・管理する(ピア依存)。プラグイン利用で設定を簡素化できます。