0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Viteのenvの件

Posted at

何について?

viteのenvについて、ちょっとつまずいたので備忘録として書きます。

Viteとは

簡単に言うとfront develoment用のbuild toolという認識でいます。

何がすごい

自分自身、どちらかというとbackend側のエンジニアなのであまり詳しいことは言えませんが、とにかくbuildが早いという特徴があるらしいです。
こちらのブログが参考になりました。https://devlog.neton.co.jp/develop/react/vite-turbopack/

なぜ使った?

MERN stackを作ってみたくて、MongoDBのtutorialを参考にしましたが、そこで使ってました。
https://www.mongodb.com/languages/mern-stack-tutorial

前提として

開発をしてると、環境変数というのはどうしても避けられないものだと思います。
production, development, test、それぞれの環境用の変数を開発中にどれだけ気にせず作業できるかが開発の効率にもつながり、違う環境の値を使ってしまうミスも防げます。

何にハマった?

環境変数の読み込み方に少しつまづきました。

Naming Rule

ViteではREACTのように編集名の頭にVITEをつけないと無視されます。
ビルトインされた環境名もすでに存在します。
(Env Variables)https://vitejs.dev/guide/env-and-mode#env-variables

読み込み方法

REACTではprocess.env.{VITE_環境変数}で読み込めますが、Viteの場合はBuild時に書き込まれるので、import.meta.env.{VITE_環境変数}を使います。

.envの種類

.env
.env.local
.env.[mode] // modeとはprduction, development, staging, testingなどです。*localもmodeの一つ?

vite command

vite build -> production用コマンドで
vite (--open) -> development用コマンドで オプション--openをつけるとbrowserを開けてくれます。

.env.[mode]は.envよりも優先度が高いです。
例えば、vite --openの時はvite.localがあった場合、そちらの方を優先につかいます。
同様に、vite buildの時はvite.productionが優先的に使われます。
ちなみにvite --open時に.env.local, .env.development, .env.staging, .env.testingがあった場合、何も指定しなければ.env.developmentが使われました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?