Flutter如何使用flutter_dotenv加载环境变量
我在Flutter项目中尝试使用flutter_dotenv加载环境变量,但总是失败。我的步骤是:1) 在pubspec.yaml中添加了依赖,2) 创建了.env文件并添加了变量,3) 在main.dart中调用了DotEnv().load()。运行时却提示找不到环境变量。请问正确的配置流程是什么?是否需要额外的设置?我的.env文件应该放在项目哪个目录下?
        
          2 回复
        
      
      
        在Flutter中使用flutter_dotenv加载环境变量:
- 添加依赖到pubspec.yaml:
dependencies:
  flutter_dotenv: ^5.0.2
- 创建.env文件并添加变量:
API_URL=https://api.example.com
- 在pubspec.yaml中声明资源:
assets:
  - .env
- 在main.dart中初始化:
import 'package:flutter_dotenv/flutter_dotenv.dart';
void main() async {
  await dotenv.load();
  runApp(MyApp());
}
- 使用环境变量:
String apiUrl = dotenv.env['API_URL']!;
注意:不要将.env文件提交到版本控制。
更多关于Flutter如何使用flutter_dotenv加载环境变量的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
在Flutter中使用flutter_dotenv加载环境变量的步骤如下:
1. 添加依赖
在 pubspec.yaml 中添加:
dependencies:
  flutter_dotenv: ^5.1.0
运行 flutter pub get。
2. 创建环境变量文件
在项目根目录创建 .env 文件(建议添加到 .gitignore):
API_URL=https://api.example.com
API_KEY=your_api_key_here
3. 配置 pubspec.yaml
在 pubspec.yaml 中声明资源文件:
flutter:
  assets:
    - .env
4. 加载配置
在 main.dart 的 main() 函数中初始化:
import 'package:flutter_dotenv/flutter_dotenv.dart';
void main() async {
  await dotenv.load(fileName: ".env");
  runApp(MyApp());
}
5. 使用环境变量
String apiUrl = dotenv.get('API_URL');
String apiKey = dotenv.get('API_KEY');
// 或者带默认值
String apiUrl = dotenv.maybeGet('API_URL') ?? '默认值';
6. 不同环境配置(可选)
- 创建多个环境文件:.env.dev,.env.prod
- 加载时根据环境选择文件:
await dotenv.load(fileName: ".env.${const String.fromEnvironment('ENV')}");
注意事项
- 确保 .env文件路径正确
- 变量名区分大小写
- 敏感信息不要提交到代码仓库
这样就完成了环境变量的配置和使用。
 
        
       
             
             
            

