如何在 Typescript 中正确使用环境变量? [复制]

Posted

技术标签:

【中文标题】如何在 Typescript 中正确使用环境变量? [复制]【英文标题】:How to use environment variable in Typescript properly? [duplicate] 【发布时间】:2021-11-20 04:32:11 【问题描述】:

我正在尝试使用 typescript 制作一个简单的 api,当我使用任何 env 变量时,我从 TS 编译器收到一个错误告诉我这可能是 undefined

例子

// 不工作

const db = process.env.DB_URL   // This gives an error that the result could be a string or undefined

解决这个问题 我必须做一个类型保护并检查 if 语句如下

const db = process.env.DB_URL   

if (db)
  // ....



有没有更好的方法来处理这样的事情,而不是显式检查每个变量?

【问题讨论】:

是的,使用条件检查提供类型安全和运行时安全。 【参考方案1】:

您可以应用空检查并将其保留为字符串,而不是定义两种类型:

const db: string = process.env.DB_URL ?? ''

// empty strings are falsy/falsey
if (db)  // do this
else  //do this 

【讨论】:

这是我现在正在做的事情,我的问题是有更好的方法吗? 这是一种更好的方法,您在此处同时进行类型安全和运行时安全。

以上是关于如何在 Typescript 中正确使用环境变量? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 TypeScript 中使用 fetch

在 React 和 Typescript 中使用 .env 文件读取 URL 环境变量的问题

如何在 Typescript 类中创建 Angular 5 HttpClient 实例

Typescript - 如何在 Angular2 中正确使用 jsPDF?

如何在 TypeScript npm 模块中导出类型

如何使用 Typescript 在 mongoose 中正确键入对象 ID 数组