使用自定义项目环境变量类型减速扩展 @types/node
Extend @types/node with custom project environment variable type decelerations
我有一个项目使用 dotenv
作为环境变量,我想为项目使用的变量添加自定义项目特定类型,用于自动完成等。
如何在不覆盖 @types/node
已经完成的所有内容的情况下执行此操作?
您可以扩充 ProcessEnv
接口,它是 process.env
的类型:
// node.augmentations.d.ts
declare namespace NodeJS {
interface ProcessEnv {
db: string
port: string
}
}
//otherfile.ts
process.env.port //suggested
process.env.db // suggested
process.env.dbb // still ok
此方法将为您提供自动完成功能,但它不会阻止您访问 env
上的其他成员,因为 ProcessEnv
定义了索引签名。
我有一个项目使用 dotenv
作为环境变量,我想为项目使用的变量添加自定义项目特定类型,用于自动完成等。
如何在不覆盖 @types/node
已经完成的所有内容的情况下执行此操作?
您可以扩充 ProcessEnv
接口,它是 process.env
的类型:
// node.augmentations.d.ts
declare namespace NodeJS {
interface ProcessEnv {
db: string
port: string
}
}
//otherfile.ts
process.env.port //suggested
process.env.db // suggested
process.env.dbb // still ok
此方法将为您提供自动完成功能,但它不会阻止您访问 env
上的其他成员,因为 ProcessEnv
定义了索引签名。