🤫
Vite の環境変数で boolean 型を使う時の注意点
.env
の環境変数で boolean
型として扱いたくて以下のように定義して
.env
VITE_APP_PUBLISH="true"
env.d.ts
/// <reference types="vite/client" />
interface ImportMetaEnv {
readonly VITE_APP_PUBLISH: boolean
}
interface ImportMeta {
readonly env: ImportMetaEnv
}
実装ではこんなふうに書いていた。
if (import.meta.env.VITE_APP_PUBLISH)
でもこれでは期待通り判定されず、以下だと期待通りの動作になった。
- if (import.meta.env.VITE_APP_PUBLISH)
+ if (import.meta.env.VITE_APP_PUBLISH === true)
本当はやり方があるのかもしれないけど、AI コーディングツールが教えてくれて対応できたのでとりあえずはこれで対応。
似たようなことで困っている人の助けになれば幸いです。
もしも、他にやり方があればアドバイス頂けるとうれしいなぁ 🙏
Discussion