環境變數對於設定隨著環境在開發、測試和生產之間切換而適應的配置參數至關重要。以穩健、可擴展的方式管理這些變數可確保順利開發、部署和維護。它對處理程式碼的開發人員和建置 CI/CD 管道的 DevOps 工程師都有好處。
在這裡,我提出了一種方法,可以最大限度地減少程式碼重複和維護工作,同時遵守不要重複自己(DRY) 和保持簡單、愚蠢(KISS)。此外,我將概述替代策略及其優缺點。
VITE_API_URL_DEV=http://localhost:3000/v1 VITE_BRAND_NAME_DEV=TablesXi VITE_API_URL_PROD=https://api.prod.com/v1 VITE_BRAND_NAME_PROD=TablesXi VITE_MODE=dev
export const ENV_VARS = { VITE_API_URL: "VITE_API_URL", VITE_BRAND_NAME: "VITE_BRAND_NAME", };
const environmentMode = import.meta.env.VITE_MODE; export const getEnvVar = (key) => { const mode = environmentMode === "dev" ? "_DEV" : "_PROD"; return import.meta.env[`${key}${mode}`]; };
const apiUrl = getEnvVar(ENV_VARS.VITE_API_URL);
優點:
缺點:
const config = environmentMode === "dev" ? require("./config.dev") : require("./config.prod"); export default config;
優點:
缺點:
const config = { apiUrl: environmentMode === "dev" ? "http://localhost:3000/v1" : "https://api.prod.com/v1", };
優點:
缺點:
透過採用基於前綴的方法或仔細考慮替代方案,您可以實現乾淨、可維護的環境變數管理策略。
如果您有建議或其他方法,歡迎在評論中分享!
最誠摯的問候,
艾哈邁德
以上是Vite和React應用程式中智慧處理環境變數的詳細內容。更多資訊請關注PHP中文網其他相關文章!