在 Svelte 组件中,我试图访问我在汇总配置文件中设置的对象。
我的 rollup.config.js
文件如下所示:
import replace from '@rollup/plugin-replace';
...
export default {
...
replace({
foo: JSON.stringify({ bar: 'Hello' }),
}),
...
在我的 Svelte 组件中,一个简单的 console.log(foo)
作品:但是当我尝试进入像
console.log(foo.bar)
这样的 foo 对象时,我得到 foo 未定义:最佳答案
好问题!对象 foo 仍未定义,因此它抛出了正确的错误,并且无法找到 foo
替换为您将要替换的任何内容。
解决方案是让替换插件完成它的工作。您可以在 js
中像这样访问您的变量或您的.svelte
文件
const { bar } = foo;
console.log(bar);
注意:此插件检查有更改 here详情。如果您打算使用 dotenv 使用环境变量,请考虑import { config } from "dotenv";
...
replace({
values: {
foo: JSON.stringify({ bar: "Hello", ...config().parsed }),
},
}),
...
在你的 slim 文件中 const { bar, ...rest } = foo;
console.log("bar=>", bar);
console.log("env=>", rest);
关于javascript - 无法进入汇总插件替换定义的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70618289/