Next.jsによるプログラミングに関する世界観です。Reactも参照のこと。
Next.jsはReactをベースにして作られたフレームワーク。
Next.jsでは、サーバサイドレンダリング(SSR)を使うことができる。SSRではクライアントのWebブラウザではなくサーバ側でレンダリングを事前に行うため、ページを表示する速度が高速になる。
また、Next.jsには、ファイルを使ったルーティングの機能がある。配置したファイルの構成に応じて、URLからルーティングを行うことができる。
また、Next.jsにはサーバの機能がある。そのため、ほかのなんらかのサーバを導入しなくても、Next.jsのサーバを使うことで簡単に作ったサービスをネット上に公開できる。
Reactを単体で使うことは多くなく、多くの場合Next.jsと一緒に使う。また、データの永続化や認証といったバックエンドのためにGoogleから提供されているオンライン上のデータベースであるFirebaseを使うことが多い。Next.jsとFirebaseを使うことで、Railsのようなバックエンドフレームワークを使用しなくても、ほとんどReactだけでサービスを開発できる。
Firebaseも参照のこと。
2023.01.08-09編集
ReactはSPA(シングルページアプリケーション)が基本だが、Next.jsのルーティングはファイルベースで行われる。
たとえば、/に相当するファイルは、pages/index.tsxに置かれ、/diaryに相当するファイルは、pages/diary.tsxに置かれる。
ページが存在しなかった時はpages/404.tsxが表示される。
pages/_app.tsxとpages/_document.tsxは特殊なファイルで、アプリケーション自体のエントリーポイントやHTMLのヘッダとして使われる。
動的ルーティングも可能で、pages/diary/[pageid].jsとして/diary/hogeにアクセスすると、
{ "pageid": "hoge" }
のようにページにパラメータが渡される。
(Next.jsを使うべき5つの理由 + 実装Tips #JavaScript - Qiitaを参考に執筆しました。)
2024.06.18
VercelはNext.jsによるWebアプリケーションをデプロイするために使えるプラットフォーム。デプロイ作業が簡単になる。運営元はNext.jsの開発元であるVercel社。
2024.06.18