首页 > 解决方案 > 在 npm 脚本中导出 .env 文件

问题描述

我正在尝试在我的反应应用程序中进行一些测试,我需要导出我的 .env 文件。我不能使用 dotenv 因为它不能在反应中被缩小。

我想在我的测试脚本中添加我的 .env 文件。就像是:

测试:'export .env mocha...."

标签: node.jsreactjsmocha.js

解决方案


另一种不使用任何其他库的方法是创建一个 JS 文件,该文件将具有典型 Node ENV 的对象作为属性导出。然后导入这个文件并根据当前的 process.env.NODE_ENV 设置变量。明显的缺点是您有一个存储在磁盘上的可访问文件,其中可能包含敏感数据

例如: https ://codesandbox.io/s/qq0vwrn1zq

环境/config.js

export default {
  "development": {
    name: "Bob"
  },
  "production": {
    name: "Jim"
  },
  "staging": {
    name: "Alexa"
  },
  "test": {
    name: "Nancy"
  }
};

例子.js

import React from "react";
import ReactDOM from "react-dom";
import config from "./env/config";
import "./styles.css";

const env = process.env.NODE_ENV;
const name = config[env].name;
function App() {
  return (
    <div className="App">
      <h1>Current ENV: {env}</h1>
      <h2>Current Name: {name}</h2>
    </div>
  );
}

const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);

推荐阅读