
El desarrollo ha sido mucho más fácil desde la invención del .env
archivo. Puede configurar fácilmente sus variables de entorno y valores con la sintaxis ENV_VARIABLE=VALUE
y ¡boom! Estas variables se cargaron como sus variables de entorno, lo que permite acceder rápidamente a ellas:
console.log(process.env.ENV_VARIABLE)
En caso de que todavía se esté preguntando qué significa todo esto, bueno, probablemente sea nuevo en el .env
archivo. En realidad, es un archivo de texto de configuración simple que se usa para definir algunas variables que desea pasar al entorno de su aplicación.
Este archivo necesita algo así como un analizador para que funcione. El analizador lee las definiciones de variables una por una y las analiza en el entorno. Utiliza el formato ENV_VARIABLE = VALUE (en el caso de Node.js :)process.env[ENV_VARIABLE]=VALUE
.
Por supuesto, esta no es una función incorporada en Node.js. Tienes que diseñarlo con un módulo popular llamado dotenv .
Es una buena solución, ya que realmente ha facilitado el desarrollo entre los co-desarrolladores y en toda la comunidad de desarrolladores en general. Yo personalmente había estado usando el módulo dotenv , hasta que me quedé varado tratando de obtener una solución que pudiera hacerme usar un archivo de configuración diferente para un entorno en particular. Eso sería aún mejor… ¿verdad? ¡Si! Pero desafortunadamente, el dotenvmódulo no nos proporciona esta ventaja.
¿Qué es lo siguiente? ¡Necesitamos esto para facilitar el desarrollo y las pruebas en las diferentes etapas de desarrollo!
¿Qué hay de los archivos .env personalizados para diferentes etapas del entorno?
¿No crees que sería una buena solución? ¿Definir variables de entorno personalizadas simplemente creando un archivo .env.envname ? ¡Frio! Eso es lo que custom-env ha llegado a hacer.
Env personalizado es una biblioteca creada para facilitar el desarrollo al permitir múltiples configuraciones .env para diferentes entornos. Esto se hace cargando variables de entorno desde un archivo .env.envname en el process.env
objeto del nodo .
Instalación
Solo agárralo con el siguiente comando:
npm i custom-env
Uso
require('custom-env').env()
De forma predeterminada, custom-env elige el archivo .env para su etapa de desarrollo. Sin embargo, para personalizar para una etapa diferente, agregue el nombre como un sufijo como en .env.envname.
Ejemplo
Podemos definir una variable de entorno personalizada para un desarrollo provisional.
- Cree un archivo .env.staging
- Define tus variables
APP_ENV=staging APP_NAME=custom environment app DB_HOST=localhost DB_USER=user DB_PASS=pass
- Accede a tus variables
// Require custom-env and set your preferred env file require ('custom-env').env('staging') console.log(process.env.APP_ENV) console.log(process.env.APP_NAME) console.log(process.env.DB_HOST) console.log(process.env.DB_PASS)
Rendimiento esperado
staging custom environment app localhost user pass
Eso es, bastante fácil. Siéntase libre de definir más variables para las diferentes etapas que crea que tiene, como:
.env.testing, .env.staging, .env.server1, .env.server2, .env.localhost
Establecer en el entorno actual
Puede decirle a custom-env que use una configuración que coincida con su etapa de desarrollo actual pasando trueal env()
método.
Ejemplo
Archivo: index.js
// Pass true to env() to make it use the current environment stage. require('custom-env').env(true) console.log(process.env.APP_NAME) console.log(process.env.USERNAME) console.log(process.env.PASSKEY)
Ahora definamos un archivo de configuración provisional:
Archivo: .env.staging
APP_NAME=Staging Node App USER_NAME=John PASSKEY=J*h*
Ahora sirvamos a node con el entorno de ensayo:
NODE_ENV=staging node index.js
Rendimiento esperado

¡Ahí tienes!
Documentación completa
Para obtener la documentación completa de custom-env, visite la página de npm//www.npmjs.com/package/custom-env
Código fuente
Puede obtener o contribuir al entorno personalizadocódigo fuente en //github.com/erisanolasheni/custom-env
¡Feliz codificación!