Estoy estudiando un curso de NodeJs, el objetivo principal de este curso es aprender NodeJS sin usar npm, por lo que llegamos a una etapa en la que definimos nuestra variable de entorno para la puesta en escena y la producción, y no pude cambiar entre NODE_ENV desde la terminal cmd , tenemos un archivo config.js que exporta el entorno, el index.js los importa y en base al NODE_ENV solicitado, te lo entrega. -así que este es el script config.js:
/* **** Creating and exporting config variables */ // var environments = {}; // environments.staging ={ 'port' : 3000, 'envName' : 'staging', } environments.production ={ 'port' : 5000, 'envName' : 'production', } // var currentEnvironment = typeof(process.env.NODE_ENV) == 'string' ? process.env.NODE_ENV.toLowerCase() :''; // var environmentToExport = typeof(environments[currentEnvironment]) == 'object' ? environments[currentEnvironment] : environments.staging; // module.exports = environmentToExport;y el script Index.js es este:
var http = require('http'); var url = require('url'); var stringDecoder = require('string_decoder').StringDecoder; var config = require('./config'); var server = http.createServer((req,res)=>{ to many lines i coudln't paste them }); server.listen(config.port,()=>{ console.log("Server listening on port Nº : "+config.port+" in "+config.envName+" environment "); });Entonces, ¿cómo puedo elegir NODE_ENV desde la terminal?
Como NODE_ENV es una variable de entorno, puede cambiar esta opción en la sesión de terminal con el set de comandos (en CMD):
set NODE_ENV=production node index.js