【问题标题】:How to use environment variable in Typescript properly? [duplicate]如何在 Typescript 中正确使用环境变量? [复制]
【发布时间】: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){
  // ....
}


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

【问题讨论】:

  • 是的,使用条件检查提供类型安全和运行时安全。

标签: node.js typescript


【解决方案1】:

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

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

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

【讨论】:

  • 这是我现在正在做的事情,我的问题是有更好的方法吗?
  • 这是一种更好的方法,您在此处同时进行类型安全和运行时安全。
猜你喜欢
  • 2019-12-16
  • 1970-01-01
  • 2011-04-19
  • 1970-01-01
  • 2020-11-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多