おはようございます。こんにちは。こんばんわ。
Watatakuです。
今回の書いていく内容は「Next.js における環境変数の基本的な設定方法」です。env
ファイルの基本的な使い方の参考になれば幸いです!
バージョン 9.4 以上の Next.js から、環境変数のサポートが組み込まれています。
環境変数を設定する基本的な方法は以下の通りです。
.env.local
に環境変数を定義(詳細は後述)process.env.環境変数名
とするNEXT_PUBLIC_
とする// .env
API_KEY=abcdefghijk
// pages/index.tsx
import { GetStaticProps } from 'next';
// サーバー側で実行
export const getStaticProps: GetStaticProps = async () => {
console.log(process.env.API_KEY);
...
};
// クライアント側で実行
export default function Index(): JSX.Element {
return (
<>
{process.env.API_KEY}
</>
);
}
Next.js では env
ファイル名に応じて、開発 / 本番環境で切り替えることができます。具体的なルールは以下の通りです。
.env
:常に読み込み.env.development
:開発環境.env.production
:本番環境.env.local
:常に読み込み.env.development.local
:開発環境.env.production.local
:本番環境
基本的にシークレットな値は .env*.local
で定義を行い、.gitignore
でリポジトリから除外します。
一方で、.env
/ .env.development
/ .env.production
は、リポジトリに含めます。URL や企業名などデフォルト値などを定義するときに使いましょう。
https://nextjs-ja-translation-docs.vercel.app/docs/basic-features/environment-variables
https://fwywd.com/tech/next-env