【问题标题】:getting error : TypeError: fs.readFileSync is not a function收到错误:TypeError:fs.​​readFileSync 不是函数
【发布时间】:2021-01-10 16:57:20
【问题描述】:

出现错误:TypeError: fs.readFileSync is not a function 当我尝试使用从 .env 文件中获取值时,谁能帮助我为什么会出现此错误?在这里我已经上传了我的代码,有人可以帮我解决这个问题吗?任何帮助将不胜感激。

const dotenv = require('dotenv').config();
const fs = require('fs');
const envConfig = dotenv.parse(fs.readFileSync('.env'))
for (const k in envConfig) {
  process.env[k] = envConfig[k]
}

【问题讨论】:

  • 您的 require('fs') 似乎无法在您的项目中找到 fs 模块。
  • fs 模块是节点核心模块的一部分,因此您不需要再次安装它,如果您看到 TypeError: fs.readFileSync is not a function 这意味着 readFileSync 未在该模块或安装中定义因为你的 nodejs 不完整。看看你是否可以重新安装你的nodejs

标签: reactjs dotenv


【解决方案1】:

首先我想提醒一下fs 在浏览器中不起作用。这是为了保护您的文件系统免受潜在的安全威胁而设计的。

您在创建 ReactJs 项目时是否使用了create-react-app

如果是这种情况,以下解决方案将解决此问题。

在您的 .env 文件中,您必须将 REACT_APP_ 附加到所有 env 变量以使其工作。

更改后不要忘记重新启动服务器。

例如:

这行得通-

REACT_APP_MYVAR=yourSecret

这不是

MYVAR=yourSecret

您可以在此处阅读参考链接。 https://create-react-app.dev/docs/adding-custom-environment-variables/

【讨论】:

    猜你喜欢
    • 2020-04-26
    • 2016-10-03
    • 2021-07-18
    • 2016-09-21
    • 2020-11-16
    • 2020-03-01
    • 2020-02-12
    • 2021-08-26
    • 2021-09-24
    相关资源
    最近更新 更多