En mi aplicación Next.js, creé un archivo .env
con una variable llamada API_KEY
.
La desestructuración del valor da como resultado undefined
, como se muestra aquí:
const { API_KEY } = process.env; // = undefined const key = process.env.API_KEY; // = 'value'
¿Alguien puede explicar por qué process.env
no se completa con el valor correcto aquí?
De los documentos :
Nota: Para mantener seguros los secretos exclusivos del servidor, Next.js reemplaza
process.env.*
con los valores correctos en el momento de la compilación. Esto significa queprocess.env
no es un objeto JavaScript estándar, por lo que no puede usar la desestructuración de objetos.
y para componentes React del lado del cliente
El valor se insertará en JavaScript enviado al navegador debido al prefijo
NEXT_PUBLIC_
. Esta incorporación se produce en el momento de la compilación, por lo que es necesario establecer variosNEXT_PUBLIC_
envs cuando se compila el proyecto.