类型错误 [ERR_INVALID_ARG_TYPE]:"path"参数的类型必须是字符串。收到未定义和代码:'ERR_INVALID_ARG_TYPE'


import dotenv from "dotenv";
import path from 'path';
dotenv.config({
path: path.resolve(path.__dirname, `${process.env.NODE_ENV}.env`),
});
export default config = {
NODE_ENV: process.env.NODE_ENV || "development",
HOST: process.env.HOST || "localhost",
PORT: process.env.PORT || 3001,
};

当我试图让config.js文件处理多个.env文件时,但我得到了这个错误。os:windows10

我用这个解决了:

import dotenv from "dotenv";
import path from 'path';
dotenv.config({
path: path.resolve(path.dirname("/"), `${process.env.NODE_ENV}.env`),
});
const config = {
NODE_ENV: process.env.NODE_ENV || "development",
HOST: process.env.HOST || "localhost",
PORT: process.env.PORT || 3001,
};

export default config;

__dirname不在path模块中,因此path.__dirname未定义。

您应该使用__dirname

请参见此处:https://www.digitalocean.com/community/tutorials/nodejs-how-to-use__dirname#:~:text=__dirname%20is%20an%20environment,js%20project。

相关内容

最新更新