dontenv.config() 给出错误 process.cwd 不是函数

问题描述 投票:0回答:1

我正在尝试将 Drizzle 集成到 Nuxt 3 中。

在 /server/db/index.ts 我有以下内容

import { sql } from '@vercel/postgres';
import { drizzle } from 'drizzle-orm/vercel-postgres';
import dotenv from 'dotenv';
import * as schema from './schema';
import path from 'path'

dotenv.config({ path: '../../.env' });

export const db = drizzle(sql, { schema });

当我尝试将

db
导入我的组件时,出现以下错误

500
process.cwd is not a function

at Object.configDotenv (http://localhost:3000/_nuxt/node_modules/.cache/vite/client/deps/dotenv.js?v=c9c673b9:267:47)
at Object.config (http://localhost:3000/_nuxt/node_modules/.cache/vite/client/deps/dotenv.js?v=c9c673b9:314:29)
at http://localhost:3000/_nuxt/server/db/index.ts?t=1720792472809:5:8
node.js nuxt.js dotenv drizzle
1个回答
0
投票

我认为您必须确保从当前文件的目录正确解析到 .env 文件的路径。 我建议您使用 path.resolve 来正确获取文件路径。

例如:

dotenv.config({ path: path.resolve(__dirname, '../../.env') });

并确保代码是服务器端逻辑的一部分,并且不包含在客户端捆绑包中。

希望我的回答对你有帮助。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.