【问题标题】:'require is not defined' error when trying to set up .env file尝试设置 .env 文件时出现“未定义要求”错误
【发布时间】:2018-06-06 17:35:37
【问题描述】:

我正在尝试设置一个 .env 文件来将凭据存储到我的 Firebase 数据库中的一个 vanilla JS 项目中。我已经学习了一些教程和dotenv 的文档,但我仍然收到错误消息Uncaught ReferenceError: require is not defined。我错过了什么?

这是我在 index.html 文件中的 <script>tags 中的内容。凭据位于.env

require('dotenv').config();
// Initialize Firebase
var config = {
  apiKey: process.env.API_KEY,
  authDomain: process.env.AUTH_DOMAIN,
  databaseURL: process.env.DATABASE_URL,
  projectId: process.env.PROJECT_ID,
  storageBucket: process.env.STORAGE_BUCKET,
  messagingSenderId: process.env.MESSAGING_SENDER_ID
};
firebase.initializeApp(config);

【问题讨论】:

  • require 是一个 Node.js 函数。它不能用于客户端。 process 也不能在浏览器中访问。您将客户端和服务器端 javascript 混淆了。

标签: javascript firebase npm firebase-realtime-database environment-variables


【解决方案1】:

如果你想在浏览器中使用 require 功能,浏览器没有 require 功能,比如browserify

dotenv 是 node 模块,它需要 fs 模块来读取 .env 文件,你不能在浏览器中使用它

【讨论】:

  • 是否有另一种方法来设置和使用.env 文件,而不必使用诸如 browserify/webpack 之类的东西?
  • 你不能在浏览器中使用 .env 文件
猜你喜欢
  • 1970-01-01
  • 2020-09-04
  • 1970-01-01
  • 2014-09-06
  • 2021-05-11
  • 2021-02-07
  • 2016-04-29
  • 2017-12-26
  • 1970-01-01
相关资源
最近更新 更多