【发布时间】:2021-08-30 00:08:28
【问题描述】:
我正在尝试在 SvelteKit 项目中使用 dotenv.config()。
我可以成功运行npm run build。但是当我尝试启动服务器(使用node build)时,它会抛出Error: Dynamic require of "fs" is not supported。
我尝试注释掉src/routes/test.js 中的dotenv 部分并再次构建,这次服务器启动时没有任何错误。 (我用npm init svelte@next创建的项目没有打字稿,除了这里的代码,其他没有任何改变)
这里应该如何使用dotenv在运行时加载环境变量?
svelte.config.js
import node from '@sveltejs/adapter-node';
const config = {
kit: {
adapter: node(),
target: '#svelte'
}
};
export default config;
/src/routes/test.js
import dotenv from 'dotenv';
dotenv.config();
export function get() {
return {
body: {
test: process.env.TEST
}
}
}
.env
TEST=123
【问题讨论】:
-
这可能会有所帮助:docs
-
我认为“您需要自己实例化 dotenv”意味着自己导入 dotenv。但我想现在唯一的方法就是给环境变量加上前缀?