@ 4c/ env
用于在节点和webpack项目中处理环境变量的一小套提法. 包好精华 getEnv 还有
使用量
import * as Env from '@4c/env';
获取和解析变量
env 包装和再出口 getEnv 作为 get()。 。 。 .
Env.get('NODE_ENV'); // 'production'
// Fails hard on missing variables
Env.get('NOT_SET_VAR'); // Error
// Fall back to a default if needed
Env.get('NOT_SET_VAR', 'default_value'); // 'default_value'
// Parsing
Env.get.int('MAX_SUBSCRIPTIONS', 4);
process.env.BOOLISH = 1;
Env.get.boolish('BOOLISH'); // true
正在装入 .env 文件
env 将加载并解析 .env 文档,按环境。 我们用命名法 variables-{ENV}.env 以不同的环境拆分变量。 默认是 dev。 。 。 .
Env.load(); // adds variables-dev.env to process.env
Env.load('test'); // adds variables-test.env to process.env
也有一个功能 通过羡慕变量 到 Webpack的 DefinePlugin 允许实例 process.env.FOO 在前端代码中替换为特定的编译时间值.
// returns variables-test.env mapped to an object keyed by process.env.[foo] for use in webpack
new webpack.DefinePlugin(Env.define('test'));