Valeurs brutes expérimentales des variables d'environnement
Type : boolean
Par défaut : false
astro@5.12.0
Nouveau
Astro vous permet de configurer un schéma avec sûreté du typage pour vos variables d’environnement, et convertit les variables importées via astro:env
dans le type attendu.
Cependant, Astro convertit également vos variables d’environnement utilisées via import.meta.env
dans certains cas, ce qui peut empêcher l’accès à certaines valeurs telles que les chaînes de caractères "true"
(qui est convertie en valeur booléenne) et "1"
(qui est convertie en nombre).
L’option experimental.rawEnvValues
désactive la coercition des valeurs d’import.meta.env
qui sont renseignées à partir de process.env
, vous permettant d’utiliser la valeur brute.
Pour désactiver la coercition d’Astro sur les valeurs utilisées via import.meta.env
, définissez l’option experimental.rawEnvValues
sur true
dans votre configuration Astro :
import { defineConfig } from "astro/config"
export default defineConfig({ experimental: { rawEnvValues: true, }})
Utilisation
Section intitulée « Utilisation »L’activation de cette option expérimentale ne convertira plus les valeurs de chaîne de caractères en booléens ou en nombres. Cela aligne le comportement de import.meta.env
dans Astro avec celui de Vite.
Dans une future version majeure, Astro passera à la non-contrainte des valeurs d’import.meta.env
par défaut, mais vous pouvez opter pour le comportement futur plus tôt en utilisant l’option experimental.rawEnvValues
et si nécessaire, mettre à jour votre projet en conséquence.
Mise à jour de votre projet
Section intitulée « Mise à jour de votre projet »Si vous vous appuyiez sur cette coercition, vous devrez peut-être mettre à jour le code de votre projet pour l’appliquer manuellement :
const enabled: boolean = import.meta.env.ENABLEDconst enabled: boolean = import.meta.env.ENABLED === "true"
Si vous avez besoin de coercition dans Astro, nous vous recommandons d’utiliser astro:env
.