はじめに
普通のReact
とNext.js
で環境変数の設定方法が異なることを知らず、APIキー
を呼び出せずハマってしまった。
かなり初歩的です。
.env ファイルで定義
まず、プロジェクトのルートディレクトリに.env
ファイルを作成する。
(.gitignore
に記述してgit
管理外にしておく)
APIKEY
を設定する例としてます。
React の場合
環境変数定義の際、変数名の最初にREACT_APP_
をつける
..env
REACT_APP_APIKEY="xxxxxxxxxxxxxxxxxxxxxxx"
Next.js の場合
環境変数定義の際、変数名の最初にNEXT_PUBLIC_
をつける
..env
NEXT_PUBLIC_APIKEY="xxxxxxxxxxxxxxxxxxxxxxx"
js(もしくはts)ファイルで呼び出す
React
の場合でもNext.js
の場合でもprocess.env.環境変数名
で呼び出す。
React の場合
..js
const apiKey = process.env.REACT_APP_APIKEY;
Next.js の場合
..js
const apiKey = process.env.NEXT_PUBLIC_APIKEY;
最後に
Next.js
のプロジェクトでREACT_APP_
を使ってしまい、APIに接続できずに悩みました...
参考になる詳しい記事がたくさんありました。
ありがとうございました。