{"id":1394,"date":"2021-11-16T08:40:11","date_gmt":"2021-11-16T08:40:11","guid":{"rendered":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/?p=1394"},"modified":"2021-11-16T08:41:43","modified_gmt":"2021-11-16T08:41:43","slug":"como-configurar-nuestro-proyecto-react-para-que-pueda-usar-variables-de-entorno","status":"publish","type":"post","link":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/como-configurar-nuestro-proyecto-react-para-que-pueda-usar-variables-de-entorno\/","title":{"rendered":"C\u00f3mo configurar nuestro proyecto React para que pueda usar variables de entorno"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1403\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/React.png\" alt=\"\" width=\"1543\" height=\"883\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/React.png 1543w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/React-300x172.png 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/React-1024x586.png 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/React-768x439.png 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/React-1536x879.png 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/React-610x349.png 610w\" sizes=\"auto, (max-width: 1543px) 100vw, 1543px\" \/><\/p>\n<p>Al desarrollar un proyecto siempre es necesario disponer de diferentes entornos para poder desarrollar y testear antes de pasar a producci\u00f3n. As\u00ed, es habitual tener entornos de Desarrollo, Pre-Producci\u00f3n y Producci\u00f3n, aunque tambi\u00e9n podemos encontrarnos con escenarios con m\u00e1s (o menos) entornos. Por ello, es necesario disponer de variables de entorno que puedan ser configurables de forma autom\u00e1tica a la hora de compilar\/ejecutar nuestras aplicaciones react, tales como URLs de Apis, Client Ids, etc<\/p>\n<p><!--more--><\/p>\n<h2>Escenario<\/h2>\n<p>Supongamos que tenemos 3 entornos de desarrollo, LOCAL, INTEGRATION y PRODUCTION y, en cada uno de ellos queremos configurar una URL para acceder a un servicio como podr\u00eda ser una api de Azure Cognitive Services. Veamos paso a paso c\u00f3mo configurar nuestro proyecto React para que pueda usar variables de entorno, desde el caso simple de un \u00fanico entorno, hasta el escenario propuesto con 3 entornos.<\/p>\n<h2>Primera opci\u00f3n \u2013\u00a0<em>Fichero .env<\/em><\/h2>\n<p>Como primera opci\u00f3n tenemos la\u00a0<strong>caracter\u00edstica que trae React.js<\/strong>\u00a0para poder<strong>\u00a0configurar variables de entorno haciendo uso del fichero .env<\/strong>\u00a0que, nos permitir\u00e1 disponer de sus valores en todo el proyecto de una forma sencilla.<\/p>\n<p>Para ello, declaramos las variables, una por l\u00ednea, y les asignamos el valor correspondiente.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" class=\"wp-image-1873 lazyloaded\" src=\"https:\/\/blog.santiagoporras.com\/wp-content\/uploads\/2021\/11\/image.png\" sizes=\"(max-width: 743px) 100vw, 743px\" srcset=\"\/wp-content\/uploads\/2021\/11\/image.png 743w, \/wp-content\/uploads\/2021\/11\/image-300x145.png 300w, \/wp-content\/uploads\/2021\/11\/image-720x347.png 720w\" alt=\"\" data-srcset=\"\/wp-content\/uploads\/2021\/11\/image.png 743w, \/wp-content\/uploads\/2021\/11\/image-300x145.png 300w, \/wp-content\/uploads\/2021\/11\/image-720x347.png 720w\" data-src=\"\/wp-content\/uploads\/2021\/11\/image.png\" data-sizes=\"(max-width: 743px) 100vw, 743px\" \/><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1400\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/valor-correpondiente.png\" alt=\"\" width=\"1585\" height=\"758\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/valor-correpondiente.png 1585w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/valor-correpondiente-300x143.png 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/valor-correpondiente-1024x490.png 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/valor-correpondiente-768x367.png 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/valor-correpondiente-1536x735.png 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/valor-correpondiente-610x292.png 610w\" sizes=\"auto, (max-width: 1585px) 100vw, 1585px\" \/><\/figure>\n<\/div>\n<p>Para probar que todo funciona, he modificado el fichero App.tsx para\u00a0<strong>mostrar el valor de esta variable<\/strong>\u00a0entre asteriscos, a\u00f1adiendo el acceso a las variables de entorno\u00a0<strong>tal y como se indica en la propia documentaci\u00f3n<\/strong>:<\/p>\n<div>\n<div id=\"highlighter_344552\" class=\"syntaxhighlighter plain\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"plain plain\">process.env.{ENVIRONMENT_VARIABLE_NAME}<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" class=\"wp-image-1883 lazyloaded\" src=\"https:\/\/blog.santiagoporras.com\/wp-content\/uploads\/2021\/11\/image-7-1024x381.png\" sizes=\"(max-width: 1024px) 100vw, 1024px\" srcset=\"\/wp-content\/uploads\/2021\/11\/image-7-1024x381.png 1024w, \/wp-content\/uploads\/2021\/11\/image-7-300x112.png 300w, \/wp-content\/uploads\/2021\/11\/image-7-768x286.png 768w, \/wp-content\/uploads\/2021\/11\/image-7-720x268.png 720w, \/wp-content\/uploads\/2021\/11\/image-7.png 1035w\" alt=\"\" data-srcset=\"\/wp-content\/uploads\/2021\/11\/image-7-1024x381.png 1024w, \/wp-content\/uploads\/2021\/11\/image-7-300x112.png 300w, \/wp-content\/uploads\/2021\/11\/image-7-768x286.png 768w, \/wp-content\/uploads\/2021\/11\/image-7-720x268.png 720w, \/wp-content\/uploads\/2021\/11\/image-7.png 1035w\" data-src=\"\/wp-content\/uploads\/2021\/11\/image-7-1024x381.png\" data-sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1399\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/process.env_.png\" alt=\"\" width=\"1607\" height=\"1021\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/process.env_.png 1607w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/process.env_-300x191.png 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/process.env_-1024x651.png 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/process.env_-768x488.png 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/process.env_-1536x976.png 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/process.env_-610x388.png 610w\" sizes=\"auto, (max-width: 1607px) 100vw, 1607px\" \/><\/figure>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" class=\"wp-image-1878 lazyload\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" data-srcset=\"\/wp-content\/uploads\/2021\/11\/image-3.png 363w, \/wp-content\/uploads\/2021\/11\/image-3-300x165.png 300w\" data-src=\"\/wp-content\/uploads\/2021\/11\/image-3.png\" data-sizes=\"(max-width: 363px) 100vw, 363px\" \/><\/figure>\n<\/div>\n<blockquote class=\"wp-block-quote\"><p>Es importante tener en cuenta que el \u00ab<em>naming convention<\/em>\u00bb para las variables de entorno en React.js nos obliga a usar el prefijo\u00a0<strong>REACT_APP_<\/strong><\/p>\n<p><cite><a href=\"https:\/\/create-react-app.dev\/docs\/adding-custom-environment-variables\/\">Adding Custom Environment Variables | Create React App (create-react-app.dev)<\/a><\/cite><\/p><\/blockquote>\n<h2>Segunda opci\u00f3n \u2013\u00a0<em>Ficheros .env por entorno<\/em><\/h2>\n<p>Adentr\u00e1ndonos algo m\u00e1s en el uso del fichero .env, podremos\u00a0<strong>disponer de sobreescrituras por entorno de ejecuci\u00f3n<\/strong> pero, se har\u00e1 de una forma un tanto \u00abextra\u00f1a\u00bb y \u00abpoco intuitiva\u00bb, al menos para los que estamos acostumbrados a trabajar con .Net \ud83d\ude42<\/p>\n<p>Tal y como se especifica en la documentaci\u00f3n,\u00a0<strong>tendremos los entornos \u00abdefault\u00bb, \u00ablocal\u00bb, \u00abdevelopment\u00bb, \u00abtest\u00bb y \u00abproduction\u00bb<\/strong>. Podremos tener en nuestro proyecto los ficheros de cada entorno pero\u2026\u00a0<strong>\u00a1CUIDADO!<\/strong>\u00a0Hay que tener muy en cuenta el orden de carga de los mismos porque los valores se sobreescriben y no exactamente en el orden en el que se exponen en la documentaci\u00f3n<\/p>\n<blockquote class=\"wp-block-quote\"><p><em><code>.env<\/code>: Default.<\/em><\/p>\n<p><em><code>.env.local<\/code>: Local overrides.\u00a0<strong>This file is loaded for all environments except test.<\/strong><\/em><\/p>\n<p><em><code>.env.development<\/code>,\u00a0<code>.env.test<\/code>,\u00a0<code>.env.production<\/code>: Environment-specific settings.<\/em><\/p>\n<p><em><code>.env.development.local<\/code>,\u00a0<code>.env.test.local<\/code>,\u00a0<code>.env.production.local<\/code>: Local overrides of environment-specific settings.<\/em><\/p>\n<p><cite><a href=\"https:\/\/create-react-app.dev\/docs\/adding-custom-environment-variables\/\">Adding Custom Environment Variables | Create React App (create-react-app.dev)<\/a>.<\/cite><\/p><\/blockquote>\n<p>Seg\u00fan mi experiencia (<strong><em>en local<\/em><\/strong>), el orden es el siguiente:<\/p>\n<ul>\n<li>.env<\/li>\n<li>.env.{ENVIRONMENT}<\/li>\n<li>.env.local<\/li>\n<li>.env.{ENVIRONMENT}.local<\/li>\n<\/ul>\n<p>Para poder ejecutar un entorno en concreto, es necesario\u00a0<strong>ejecutar npm start seguido por el fichero .env del entorno a cargar<\/strong>, o incluso indicar diferentes ficheros de forma que se vayan sobreescribiendo.<\/p>\n<div>\n<div id=\"highlighter_218008\" class=\"syntaxhighlighter bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">npm start .<\/code><code class=\"bash functions\">env<\/code><code class=\"bash plain\">.{ENVIRONMENT} [.<\/code><code class=\"bash functions\">env<\/code><code class=\"bash plain\">.{ENVIRONMENT2} .<\/code><code class=\"bash functions\">env<\/code><code class=\"bash plain\">.{ENVIRONMENT}.<\/code><code class=\"bash functions\">local<\/code> <code class=\"bash plain\">...]<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" class=\"wp-image-1876 lazyload\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" data-srcset=\"\/wp-content\/uploads\/2021\/11\/image-1.png 1012w, \/wp-content\/uploads\/2021\/11\/image-1-300x151.png 300w, \/wp-content\/uploads\/2021\/11\/image-1-768x386.png 768w, \/wp-content\/uploads\/2021\/11\/image-1-720x362.png 720w\" data-src=\"\/wp-content\/uploads\/2021\/11\/image-1.png\" data-sizes=\"(max-width: 1012px) 100vw, 1012px\" \/><\/figure>\n<\/div>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1398\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-start.png\" alt=\"\" width=\"1600\" height=\"1193\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-start.png 1600w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-start-300x224.png 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-start-1024x764.png 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-start-768x573.png 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-start-1536x1145.png 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-start-610x455.png 610w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><img decoding=\"async\" class=\"wp-image-1877 lazyload\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" data-srcset=\"\/wp-content\/uploads\/2021\/11\/image-2.png 495w, \/wp-content\/uploads\/2021\/11\/image-2-300x155.png 300w\" data-src=\"\/wp-content\/uploads\/2021\/11\/image-2.png\" data-sizes=\"(max-width: 495px) 100vw, 495px\" \/><\/figure>\n<\/div>\n<h2>Mejor opci\u00f3n \u2013\u00a0<em>Usando el plugin env-cmd<\/em><\/h2>\n<p>Tengo que puntualizar que esta es una mejor opci\u00f3n desde mi punto de vista, puede que para otros desarrolladores la mejor opci\u00f3n sea alguna de las anteriores u otra diferente pero, me explico.<\/p>\n<p><strong>Usando el plugin env-cmd<\/strong>\u00a0<strong>podremos tener<\/strong>\u00a0N ficheros de configuraci\u00f3n, o s\u00f3lo uno, y en cada uno de ellos,\u00a0<strong>bloques por entornos con un\u00a0<em>naming\u00a0<\/em>personalizado<\/strong>, es decir, ya no tendremos que adaptarnos s\u00f3lo a los entornos que nos permite la opci\u00f3n 2, sino que podemos usar los nombres de entornos el n\u00famero de ellos que queramos.<\/p>\n<p>Para empezar, debemos instalar env-cmd con <em>npm install.<\/em><\/p>\n<div>\n<div id=\"highlighter_55717\" class=\"syntaxhighlighter bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">npm <\/code><span style=\"color: #ff0000;\"><code class=\"bash functions\">install<\/code> <code class=\"bash functions\">env<\/code><\/span><code class=\"bash plain\">-cmd<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u00f3<\/p>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"plain plain\">npm install -g env-cmd<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div>\n<div id=\"highlighter_260190\" class=\"syntaxhighlighter plain\"><span style=\"font-size: 16px;\">Una vez instalado, <strong>e<\/strong><\/span><strong style=\"font-size: 16px;\">l siguiente paso es crear nuestro fichero de configuraci\u00f3n, con el nombre -env-cmdrc<\/strong><span style=\"font-size: 16px;\"> al que podremos a\u00f1adir la extensi\u00f3n .json, si as\u00ed lo deseamos (yo lo prefiero). As\u00ed, organizaremos nuestros entornos en este fichero, aunque\u00a0 nos da la posibilidad de a\u00f1adir m\u00e1s.<\/span><\/div>\n<\/div>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1397\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-install.png\" alt=\"\" width=\"1599\" height=\"619\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-install.png 1599w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-install-300x116.png 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-install-1024x396.png 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-install-768x297.png 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-install-1536x595.png 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npm-install-610x236.png 610w\" sizes=\"auto, (max-width: 1599px) 100vw, 1599px\" \/><img decoding=\"async\" class=\"wp-image-1880 lazyload\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" data-srcset=\"\/wp-content\/uploads\/2021\/11\/image-4-1024x403.png 1024w, \/wp-content\/uploads\/2021\/11\/image-4-300x118.png 300w, \/wp-content\/uploads\/2021\/11\/image-4-768x302.png 768w, \/wp-content\/uploads\/2021\/11\/image-4-720x283.png 720w, \/wp-content\/uploads\/2021\/11\/image-4.png 1141w\" data-src=\"\/wp-content\/uploads\/2021\/11\/image-4-1024x403.png\" data-sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<p>Una vez tenemos nuestro fichero con las variables de entorno organizadas, tenemos que establecer el punto de ejecuci\u00f3n que har\u00e1 uso de las mismas seg\u00fan el entorno que queremos levantar. Para ello, o bien\u00a0<strong>ejecutamos toda la instrucci\u00f3n por completo o editamos el fichero package.json y, dentro de la secci\u00f3n de scripts, a\u00f1adimos aquellos alias que sean necesarios<\/strong>, ya sea para la acci\u00f3n de levantar el servidor \u00abstart\u00bb o de compilar \u00abbuild\u00bb con el formato siguiente:<\/p>\n<div>\n<div id=\"highlighter_388867\" class=\"syntaxhighlighter plain\">\n<div class=\"line number1 index0 alt2\">1\u00a0 \u00a0<span style=\"background-color: #f2f4f5; color: #222222; font-family: Monaco, Consolas, 'Andale Mono', 'DejaVu Sans Mono', monospace; font-size: 13px;\">env-cmd -e {ENVIRONMENT, ENVIRONMENT2} npm run [start|build]<\/span><\/div>\n<\/div>\n<\/div>\n<blockquote class=\"wp-block-quote\"><p>Como se puede apreciar, podemos concatenar diferentes entornos, lo que nos permite tener variables comunes en un entorno llamado \u00abCOMMON\u00bb por ejemplo, variables espec\u00edficas para el resto, y usar esta forma de concatenar entornos para cargarlas todas y sobreescribir, si fuera necesario, en el mismo orden en el que se enumeran.<\/p><\/blockquote>\n<p>En este ejemplo he creado 4 entradas, una por entorno, para poder levantar el servidor y ejecutar la aplicaci\u00f3n en el entorno que necesite<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" class=\"wp-image-1881 lazyloaded\" src=\"https:\/\/blog.santiagoporras.com\/wp-content\/uploads\/2021\/11\/image-5-1024x503.png\" sizes=\"(max-width: 1024px) 100vw, 1024px\" srcset=\"\/wp-content\/uploads\/2021\/11\/image-5-1024x503.png 1024w, \/wp-content\/uploads\/2021\/11\/image-5-300x147.png 300w, \/wp-content\/uploads\/2021\/11\/image-5-768x377.png 768w, \/wp-content\/uploads\/2021\/11\/image-5-720x354.png 720w, \/wp-content\/uploads\/2021\/11\/image-5.png 1101w\" alt=\"\" data-srcset=\"\/wp-content\/uploads\/2021\/11\/image-5-1024x503.png 1024w, \/wp-content\/uploads\/2021\/11\/image-5-300x147.png 300w, \/wp-content\/uploads\/2021\/11\/image-5-768x377.png 768w, \/wp-content\/uploads\/2021\/11\/image-5-720x354.png 720w, \/wp-content\/uploads\/2021\/11\/image-5.png 1101w\" data-src=\"\/wp-content\/uploads\/2021\/11\/image-5-1024x503.png\" data-sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1396\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/4-entradas.png\" alt=\"\" width=\"1586\" height=\"779\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/4-entradas.png 1586w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/4-entradas-300x147.png 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/4-entradas-1024x503.png 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/4-entradas-768x377.png 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/4-entradas-1536x754.png 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/4-entradas-610x300.png 610w\" sizes=\"auto, (max-width: 1586px) 100vw, 1586px\" \/><\/figure>\n<p>De esta forma, podr\u00e9 levantar cualquiera de los entornos de forma sencilla y r\u00e1pida con:<\/p>\n<div>\n<div id=\"highlighter_292252\" class=\"syntaxhighlighter bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">npm run {ENVIRONMENT}<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1395\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npn-run.png\" alt=\"\" width=\"1596\" height=\"1210\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npn-run.png 1596w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npn-run-300x227.png 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npn-run-1024x776.png 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npn-run-768x582.png 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npn-run-1536x1165.png 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/npn-run-610x462.png 610w\" sizes=\"auto, (max-width: 1596px) 100vw, 1596px\" \/><img decoding=\"async\" class=\"wp-image-1882 lazyloaded\" src=\"https:\/\/blog.santiagoporras.com\/wp-content\/uploads\/2021\/11\/image-6-1024x791.png\" sizes=\"(max-width: 1024px) 100vw, 1024px\" srcset=\"\/wp-content\/uploads\/2021\/11\/image-6-1024x791.png 1024w, \/wp-content\/uploads\/2021\/11\/image-6-300x232.png 300w, \/wp-content\/uploads\/2021\/11\/image-6-768x593.png 768w, \/wp-content\/uploads\/2021\/11\/image-6-720x556.png 720w, \/wp-content\/uploads\/2021\/11\/image-6.png 1159w\" alt=\"\" data-srcset=\"\/wp-content\/uploads\/2021\/11\/image-6-1024x791.png 1024w, \/wp-content\/uploads\/2021\/11\/image-6-300x232.png 300w, \/wp-content\/uploads\/2021\/11\/image-6-768x593.png 768w, \/wp-content\/uploads\/2021\/11\/image-6-720x556.png 720w, \/wp-content\/uploads\/2021\/11\/image-6.png 1159w\" data-src=\"\/wp-content\/uploads\/2021\/11\/image-6-1024x791.png\" data-sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<h2>V\u00eddeo ejemplo<\/h2>\n<p>Aqu\u00ed os dejo la grabaci\u00f3n de este ejemplo para que ve\u00e1is, paso a paso y explicado, estas tres formas de trabajar con variables de entorno en React.js<\/p>\n<figure class=\"wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\">\n<div class=\"wp-block-embed__wrapper\">\n<div class=\"video-container\"><iframe loading=\"lazy\" title=\"YouTube video player\" src=\"https:\/\/www.youtube.com\/embed\/_17erZzdDTk\" width=\"560\" height=\"315\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/div>\n<\/div>\n<\/figure>\n<h2>Resumen<\/h2>\n<p>Con React.js tenemos diversas opciones para configurar las variables de entorno y hacer uso de ellas en nuestro c\u00f3digo. Con el pluging \u00abenv-cmd\u00bb podemos tener un mayor control sobre estas variables de entorno de una forma m\u00e1s intuitiva que la que trae por defecto React.js y as\u00ed, poder cargar y testear nuestras aplicaciones con los valores que correspondan seg\u00fan el entorno que queramos ejecutar o compilar. Esto nos dar\u00e1 mayor fiabilidad a la hora de entregar nuestro trabajo y nos permitir\u00e1 aislar los entornos para poder desarrollar de forma segura sin trastear con los datos de producci\u00f3n.<\/p>\n<p>Enjoy coding!<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content --><span class=\"et_bloom_bottom_trigger\"><\/span>","protected":false},"excerpt":{"rendered":"<p>Al desarrollar un proyecto siempre es necesario disponer de diferentes entornos para poder desarrollar y testear antes de pasar a producci\u00f3n. As\u00ed, es habitual tener entornos de Desarrollo, Pre-Producci\u00f3n y Producci\u00f3n, aunque tambi\u00e9n podemos encontrarnos con escenarios con m\u00e1s (o &hellip; <a href=\"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/como-configurar-nuestro-proyecto-react-para-que-pueda-usar-variables-de-entorno\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":22,"featured_media":1403,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[70,98],"tags":[],"class_list":["post-1394","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-net","category-reactjs"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v18.2.1 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>C\u00f3mo configurar nuestro proyecto React para que pueda usar variables de entorno | ENCAMINA<\/title>\n<meta name=\"description\" content=\"Os muestro, paso a paso, c\u00f3mo configurar vuestro proyecto React para que pueda usar variables de entorno, desde un \u00fanico entorno, hasta tres.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.santiagoporras.com\/react-variables-entorno\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"C\u00f3mo configurar nuestro proyecto React para que pueda usar variables de entorno\" \/>\n<meta property=\"og:description\" content=\"Os muestro, paso a paso, c\u00f3mo configurar vuestro proyecto React para que pueda usar variables de entorno, desde un \u00fanico entorno, hasta tres.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.santiagoporras.com\/react-variables-entorno\/\" \/>\n<meta property=\"og:site_name\" content=\"Piensa en software, desarrolla en colores\" \/>\n<meta property=\"article:published_time\" content=\"2021-11-16T08:40:11+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-11-16T08:41:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/React.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1543\" \/>\n\t<meta property=\"og:image:height\" content=\"883\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Santiago Porras Rodr\u00edguez\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@saintwukong\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Santiago Porras Rodr\u00edguez\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blog.santiagoporras.com\\\/react-variables-entorno\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/como-configurar-nuestro-proyecto-react-para-que-pueda-usar-variables-de-entorno\\\/\"},\"author\":{\"name\":\"Santiago Porras Rodr\u00edguez\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#\\\/schema\\\/person\\\/c84cf613b7c5b8d5e1f7625a3e4c8c27\"},\"headline\":\"C\u00f3mo configurar nuestro proyecto React para que pueda usar variables de entorno\",\"datePublished\":\"2021-11-16T08:40:11+00:00\",\"dateModified\":\"2021-11-16T08:41:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/como-configurar-nuestro-proyecto-react-para-que-pueda-usar-variables-de-entorno\\\/\"},\"wordCount\":969,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/blog.santiagoporras.com\\\/react-variables-entorno\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2021\\\/11\\\/React.png\",\"articleSection\":[\".NET\",\"ReactJS\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blog.santiagoporras.com\\\/react-variables-entorno\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/como-configurar-nuestro-proyecto-react-para-que-pueda-usar-variables-de-entorno\\\/\",\"url\":\"https:\\\/\\\/blog.santiagoporras.com\\\/react-variables-entorno\\\/\",\"name\":\"C\u00f3mo configurar nuestro proyecto React para que pueda usar variables de entorno | ENCAMINA\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blog.santiagoporras.com\\\/react-variables-entorno\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.santiagoporras.com\\\/react-variables-entorno\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2021\\\/11\\\/React.png\",\"datePublished\":\"2021-11-16T08:40:11+00:00\",\"dateModified\":\"2021-11-16T08:41:43+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#\\\/schema\\\/person\\\/c84cf613b7c5b8d5e1f7625a3e4c8c27\"},\"description\":\"Os muestro, paso a paso, c\u00f3mo configurar vuestro proyecto React para que pueda usar variables de entorno, desde un \u00fanico entorno, hasta tres.\",\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blog.santiagoporras.com\\\/react-variables-entorno\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blog.santiagoporras.com\\\/react-variables-entorno\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2021\\\/11\\\/React.png\",\"contentUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2021\\\/11\\\/React.png\",\"width\":1543,\"height\":883},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#website\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/\",\"name\":\"Piensa en software, desarrolla en colores\",\"description\":\"Las ventajas que te ofrece Microsoft Azure y el mundo.NET\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#\\\/schema\\\/person\\\/c84cf613b7c5b8d5e1f7625a3e4c8c27\",\"name\":\"Santiago Porras Rodr\u00edguez\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g\",\"caption\":\"Santiago Porras Rodr\u00edguez\"},\"description\":\"Innovation Team Leader at ENCAMINA | MVP in Developer Technologies. Apasionado por las nuevas tecnolog\u00edas. Colaboro con la comunidad de desarrolladores escribiendo art\u00edculos en mi blog personal y ocasionalmente en CompartiMOSS.com. Adem\u00e1s, soy uno de los coordinadores de TenerifeDev, grupo de usuarios de .NET de Tenerife y de otros grupos como Comunidad Office 365. Puedes encontrarme en la red microparticipando en Twitter con el usuario @saintwukong\",\"sameAs\":[\"https:\\\/\\\/x.com\\\/saintwukong\"],\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/author\\\/en-tu-casa-o-en-la-mia\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"C\u00f3mo configurar nuestro proyecto React para que pueda usar variables de entorno | ENCAMINA","description":"Os muestro, paso a paso, c\u00f3mo configurar vuestro proyecto React para que pueda usar variables de entorno, desde un \u00fanico entorno, hasta tres.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.santiagoporras.com\/react-variables-entorno\/","og_locale":"es_ES","og_type":"article","og_title":"C\u00f3mo configurar nuestro proyecto React para que pueda usar variables de entorno","og_description":"Os muestro, paso a paso, c\u00f3mo configurar vuestro proyecto React para que pueda usar variables de entorno, desde un \u00fanico entorno, hasta tres.","og_url":"https:\/\/blog.santiagoporras.com\/react-variables-entorno\/","og_site_name":"Piensa en software, desarrolla en colores","article_published_time":"2021-11-16T08:40:11+00:00","article_modified_time":"2021-11-16T08:41:43+00:00","og_image":[{"width":1543,"height":883,"url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/React.png","type":"image\/png"}],"author":"Santiago Porras Rodr\u00edguez","twitter_card":"summary_large_image","twitter_creator":"@saintwukong","twitter_misc":{"Escrito por":"Santiago Porras Rodr\u00edguez","Tiempo de lectura":"8 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.santiagoporras.com\/react-variables-entorno\/#article","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/como-configurar-nuestro-proyecto-react-para-que-pueda-usar-variables-de-entorno\/"},"author":{"name":"Santiago Porras Rodr\u00edguez","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#\/schema\/person\/c84cf613b7c5b8d5e1f7625a3e4c8c27"},"headline":"C\u00f3mo configurar nuestro proyecto React para que pueda usar variables de entorno","datePublished":"2021-11-16T08:40:11+00:00","dateModified":"2021-11-16T08:41:43+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/como-configurar-nuestro-proyecto-react-para-que-pueda-usar-variables-de-entorno\/"},"wordCount":969,"commentCount":0,"image":{"@id":"https:\/\/blog.santiagoporras.com\/react-variables-entorno\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/React.png","articleSection":[".NET","ReactJS"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.santiagoporras.com\/react-variables-entorno\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/como-configurar-nuestro-proyecto-react-para-que-pueda-usar-variables-de-entorno\/","url":"https:\/\/blog.santiagoporras.com\/react-variables-entorno\/","name":"C\u00f3mo configurar nuestro proyecto React para que pueda usar variables de entorno | ENCAMINA","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.santiagoporras.com\/react-variables-entorno\/#primaryimage"},"image":{"@id":"https:\/\/blog.santiagoporras.com\/react-variables-entorno\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/React.png","datePublished":"2021-11-16T08:40:11+00:00","dateModified":"2021-11-16T08:41:43+00:00","author":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#\/schema\/person\/c84cf613b7c5b8d5e1f7625a3e4c8c27"},"description":"Os muestro, paso a paso, c\u00f3mo configurar vuestro proyecto React para que pueda usar variables de entorno, desde un \u00fanico entorno, hasta tres.","inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.santiagoporras.com\/react-variables-entorno\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blog.santiagoporras.com\/react-variables-entorno\/#primaryimage","url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/React.png","contentUrl":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/11\/React.png","width":1543,"height":883},{"@type":"WebSite","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#website","url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/","name":"Piensa en software, desarrolla en colores","description":"Las ventajas que te ofrece Microsoft Azure y el mundo.NET","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#\/schema\/person\/c84cf613b7c5b8d5e1f7625a3e4c8c27","name":"Santiago Porras Rodr\u00edguez","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g","caption":"Santiago Porras Rodr\u00edguez"},"description":"Innovation Team Leader at ENCAMINA | MVP in Developer Technologies. Apasionado por las nuevas tecnolog\u00edas. Colaboro con la comunidad de desarrolladores escribiendo art\u00edculos en mi blog personal y ocasionalmente en CompartiMOSS.com. Adem\u00e1s, soy uno de los coordinadores de TenerifeDev, grupo de usuarios de .NET de Tenerife y de otros grupos como Comunidad Office 365. Puedes encontrarme en la red microparticipando en Twitter con el usuario @saintwukong","sameAs":["https:\/\/x.com\/saintwukong"],"url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/author\/en-tu-casa-o-en-la-mia\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/posts\/1394","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/users\/22"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/comments?post=1394"}],"version-history":[{"count":0,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/posts\/1394\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/media\/1403"}],"wp:attachment":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/media?parent=1394"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/categories?post=1394"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/tags?post=1394"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}