我正在尝试解析一个环境变量,使用如下的
这将把一个字符串返回给变量
但是我期望像这样做。
如 Rust example 中所提到的
但是它显示错误
std::env
。let environment = env::var("SENSIBULL_ENVIRONMENT").unwrap();
这将把一个字符串返回给变量
environment
。如果我想传递一个默认值,那么我必须使用下面的代码。let environment = env::var("SENSIBULL_ENVIRONMENT").unwrap_or("development".into());
但是我期望像这样做。
let environment = env::var("SENSIBULL_ENVIRONMENT").unwrap_or("development");
如 Rust example 中所提到的
但是它显示错误
String expected but found &str
为什么在示例代码中没有发生这个错误呢?
.unwrap_or_else(|| "development".into())
,这样如果环境变量存在,则不会分配默认字符串。 - Aloso