【发布时间】:2022-01-15 13:38:42
【问题描述】:
问题
我正在尝试使用 @rollup/plugin-replace 注入/替换环境变量。不幸的是,我收到了这个错误:
TypeError: 无法将 undefined 转换为对象
代码
// rollup.config.js
import replace from "@rollup/plugin-replace";
import { config } from "dotenv";
config();
export default {
// ...
plugins: [
replace({
values: { YOUTUBE_API: JSON.stringify(process.env.YOUTUBE_API) },
preventAssignment: true,
}),
// ...
}
我这样称呼它:
onMount(() => {
(async function getPopular() {
videos = await axios.get("https://www.googleapis.com/youtube/v3/videos", {
part: "id, snippet, suggestions",
chart: "mostPopular",
key: YOUTUBE_API,
});
})();
});
我尝试了什么
我注销了变量,因此可以确认它存在。另外,如果我删除 stringify 函数,我会收到另一个错误:
ReferenceError: blablabblub 未定义
我已经在其他项目中成功地做到了这一点。这到底是怎么回事?
【问题讨论】:
标签: javascript svelte rollup rollupjs svelte-3