Estoy tratando de configurar env vars en mi aplicación Svelte para ocultar una clave API.
Seguí las instrucciones de este artículo [https://medium.com/dev-cafe/how-to-setup-env-variables-to-your-svelte-js-app-c1579430f032].
Aquí está la estructura de mi rollup.config.js
import { config as configDotenv } from 'dotenv'; import replace from '@rollup/plugin-replace'; configDotenv(); export default { ... plugins: [ replace({ __myapp: JSON.stringify({ env: { isProd: production, amplitude_api_key : process.env.amplitude_api_key } }) }), ]} Cuando intento acceder a la variable env llamando a: __myapp.env.API_KEY
Recibo este error: __myapp is not defined
Parece que el anidamiento es el problema. Pude hacerlo funcionar usando esta sintaxis:
replace({ 'process.env.isProd': production, 'process.env.amplitude_api_key': process.env.amplitude_api_key }), y luego use process.env.isProd en su aplicación. Por supuesto, si le gusta __myapp , puede usar __myapp en lugar de process en el lado izquierdo de la función de reemplazo en su configuración acumulativa.