小编Eri*_*eng的帖子

如何在开发和生产中设置 dotenv?

在我的 Express JS API 服务器中,我尝试将 dotenv 与一个.env文件一起用于我的环境设置。

我更喜欢将该.env文件用于开发和生产环境。

我正在使用 nodemon 进行开发,目前如果我包含-r dotenv/config在 package.json > 启动脚本中:

    "scripts": {
        "start": "nodemon --exec babel-node -r dotenv/config index.js"
    }
Run Code Online (Sandbox Code Playgroud)

process.env在应用程序的任何地方正确设置变量

但是,如果我使用脚本来index.js像这样配置 dotenv :

    "scripts": {
        "start": "nodemon --exec babel-node -r dotenv/config index.js"
    }
Run Code Online (Sandbox Code Playgroud)

似乎process.env只在 index.js 页面中配置,我无法process.env在中间件逻辑中获取变量?在中间件执行之前,
我已经dotenv.config()在最开始执行了

我的问题是:
1. 我的逻辑使用dotenv.config()的设置不正确吗?为什么我的中间件无法获得相同的变量?
2. 如何为开发和生产设置process.env.env文件中读取的变量?(我可能会使用 webpack 来打包我的生产版本)

谢谢你的帮助。

node.js express nodemon dotenv

5
推荐指数
1
解决办法
7583
查看次数

如何检查一个对象是否已经被销毁?

  1. 我创建了一个对象
  2. 我将它作为参数传递给其他地方。其他地方有释放我无法控制的对象。
  3. 在我的编码结束时,我尝试检查对象是否有效然后销毁它。Assigned() 方法返回true(似乎是因为变量存储了对象引用地址)。但是,引用的对象已准备好销毁,我遇到了异常。

我的问题是,如何检查对象是否已被销毁?除了 Assigned() 之外还有什么可以检查对象是否仍然存在?

program Project1;
uses System.SysUtils;

type TObj = class
  public
    Name: string;
end;

var AnObj, AnObj2 : TObj;
begin
  try
    try
      AnObj := TObj.Create;
      AnObj.Name := 'Testing';

      AnObj2 := AnObj;     // AnObj passed to other procedures as param
      FreeAndNil(AnObj2);  // somewhere else "Free" the object out of my control
      // as a result, AnObj is still assigned but the object is destroyed
    finally
      if Assigned(AnObj) then // AnObj is assigned, …
Run Code Online (Sandbox Code Playgroud)

delphi

1
推荐指数
1
解决办法
1322
查看次数

标签 统计

delphi ×1

dotenv ×1

express ×1

node.js ×1

nodemon ×1