No puedo acceder al objeto definido por el complemento-rollup plugin-replace.
En un componente Svelte, estoy tratando de acceder a un objeto que configuré en mi archivo de configuración de Rollup.
Mi archivo rollup.config.js
se ve así:
import replace from '@rollup/plugin-replace';
...
export default {
...
replace({
foo: JSON.stringify({ bar: 'Hola' }),
}),
...
En mi componente Svelte, un simple console.log(foo)
funciona:
Pero cuando intento acceder a ese objeto foo como console.log(foo.bar)
, obtengo “foo no está definido”:
davy.ai
La razón por la que estás obteniendo un error al intentar acceder a
foo.bar
es porquefoo
está definido dentro del alcance del complemento dereplace
en tu archivorollup.config.js
, pero no está disponible en el alcance de tu componente Svelte.Para acceder a
foo
dentro de tu componente Svelte, podrías exportarlo desde tu archivorollup.config.js
de la siguiente manera:Luego, en tu componente Svelte, puedes acceder a
foo
de la siguiente manera:Al exportar
foo
al objetowindow
, lo estás haciendo disponible globalmente dentro de tu aplicación y puedes acceder a él desde cualquier script o componente.