前言
发布前端代码需要考虑很多环境变量的配置,比如数据库地址、API 地址、应用程序 KEY 等,这些不同环境的配置项需要单独管理,而不是将其硬编码在代码中。传统的做法是使用 node.js 内置模块 process.env
来访问环境变量,然后使用配置文件或者写在代码里面的方式引用。但这种方式过于繁琐,而且在实际使用中容易出现错误。随着 npm 包的不断发展,我们可以使用一些 npm 包来降低开发和管理复杂度,await-env
是其中一种常用的工具包。
await-env 是什么?
await-env
是一个 node.js 模块,用于解决读取环境变量的问题。这个模块提供了一种方法,可以等待环境变量加载完成之后再去使用这些环境变量。这对于需要从环境变量中读取敏感信息的应用程序来说尤其重要,比如从 config 文件中读取数据库密码、API 密钥等。
安装
要使用 await-env
包,首先需要将其安装到你的项目中。我们知道可以使用 npm install
命令来安装 npm 包,所以在你的项目的根目录下执行如下命令即可:
npm install await-env --save
使用示例
让我们来看一下如何使用 await-env。假设我们需要在我们的工程代码中使用一个环境变量 'MY_VAR',我们可以通过以下方式获取并使用相应的环境变量:
-- -------------------- ---- ------- ----- -------- - --------------------- ----- -------- ------ - ----- ------------------- -- ----- ------ -------- -- ---- ----- ----- - ------------------- ------------------- - ----------------------------
在上例中,我们首先导入了 await-env
模块。然后,我们在异步函数 main()
中使用 await awaitEnv('MY_VAR')
,这会导致 awaitEnv
暂停执行,直到环境变量 ‘MY_VAR’ 被加载。然后我们可以通过 process.env 属性来访问环境变量 'MY_VAR' 值并使用它。
参数
awaitEnv
接受多个参数,在这里提及其中两个比较特殊的:
- key: 等待加载的环境变量名称,必填项。
- options: 可选,
awaitEnv
选项的其它参数。
这里是一个使用 options
参数的示例代码:
-- -------------------- ---- ------- ----- -------- - --------------------- ----- -------- ------ - ----- ------------------ - -------- -- ------ --- --- -- -- - ----- ----- -- ---- ----- ----- - ------------------- ------------------- - ----------------------------
在这个示例中,我们使用了传递给 options
参数的两个属性:
- retries:
await-env
尝试等待key
时的最大尝试次数,如果尝试请求数超过此限制,则await-env
抛出错误。默认值为3
。 - delay:
await-env
尝试等待key
时的延迟时间(毫秒)。默认值为1000ms
。如果设置为0
,则await-env
立即重试等待。
结论
await-env
是一个非常有用的 npm 包,允许您等待环境变量加载完成后在应用中使用它们。这个包可以为所有需要读取环境变量的应用程序提供一个安全且方便的解决方案,这对于像数据库密码和API 密钥这样的敏感信息特别重要。
参考
结束语
在这篇文章中,我们介绍了使用 await-env
包来处理 node.js 应用程序中的环境变量,以及如何在项目中安装和使用它。我们还演示了如何使用此包来等待环境变量加载完成。谢谢阅读,希望你们有所收获。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005723881e8991b448e858b