函数获取器/参数 process.env。 。 。 .
特征
- 将数字式的数值铸成数字.
- 铸币
"true"财务报告和审定财务报表"false"{\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}给布林斯的. - (原始内容存档于2018-03-27). Parses JSON.
- 丢弃,如果
process或者说process.env是非对象. - (备选) 如果变量未定义则丢出 .
安装
$ npm i @darkobits/env
使用
此包的默认导出是以下签名的函数:
interface Env {
(variableName: string, strict: boolean = false): any;
has(variableName: string): boolean;
eq(variableName: string, value: any, strict: boolean = false): boolean;
}
铭记价值观 process.env 可能只是字符串假设 process.env 看起来像这样:
{
"FOO": "foo",
"BAR": "42",
"BAZ": "true",
"QUX": "false",
"JSON": "{\"kittens\": true}"
}
import env from '@darkobits/env';
env('FOO') //=> 'foo'
typeof env('FOO') //=> 'string'
env('BAR') //=> 42
typeof env('BAR') //=> 'number'
env('BAZ') //=> true
typeof env('BAZ') //=> 'boolean'
env('QUX') //=> false
typeof env('BAZ') //=> 'boolean'
env('JSON') //=> {kittens: true}
typeof env('JSON') //=> 'object'
env('NOAP') //=> undefined
env('NOAP', true) //=> throws
// Throws if process.env has been tampered-with.
process.env = null;
env('FOO') //=> throws
// Throws if process has been tampered-with, or if process doesn't exist.
process = null;
env('FOO') //=> throws
env.has
此帮助的上游是 Object.keys(process.env).includes(x)返回时返回 true 如果提供的可变名称存在于 process.env 财务报告和审定财务报表 false 否则。 当您不关心变量的值是多少时, 不管是设定与否, 都是有益的 .
用我们的例子 process.env 上面的对象 :
env.has('FOO') //=> true
env.has('UNICORNS') //=> false
env.eq
此帮助的上游是 env(variableName) === value返回时返回 true 如果提供的可变名称存在于 process.env 且与所提供的价值相等 false 否则。 需要快速测试环境变量值时有用 。 第三个 strict 参数可能设置为 true 导致 env.eq 如果提供的变量不存在于 process.env。 。 。 .
说明: 当与非原始对象(对象、阵列)进行比较时, env.eq 将序列化所提供的 value 并比较环境变量的序列(re:字符串)形式.
用我们的例子 process.env 上面的对象 :
import env from '@darkobits/env';
env.eq('FOO', 'foo') //=> true
env.eq('BAR', 42) //=> true
env.eq('BAR', null) //=> false
env.eq('BAZ', true) //=> true
env.eq('JSON', {kittens: true}) //=> true