Next.jsのApp RouterでStatic Exportsをする時はDynamic Routesのバグに気を付ける必要がある
#technology #Next.js #TypeScript #SSG #App_Router 表題の通り、2024/11/17時点の最新版であるNext.js 15.0.3ではApp RouterでStatic Exports(いわゆるSSG)を使用するとDynamic Routesで複数のバグがあるので回避策を入れる必要がある。 next devでDynamic Routesを使う時はパーセントエンコードが必要 Static ExportsでDynamic Routesを使用する時は generateStaticParams() でパスを定義しておく必要があるが、next dev では generateStaticParams() の結果はパーセントエンコードしないとエラーが出てしまう。これは仕様に記載されていないし、next build の時は逆にパーセントエンコードするとエラーになって そのため、次のようにして next dev の場合と next build の場合で generateStaticParams() の返り値を切り替える必要がある