40 lines
835 B
Dart
40 lines
835 B
Dart
/// 应用全局配置
|
|||
|
|
class AppConfig {
|
||
|
|
static AppConfig? _instance;
|
||
|
|
|
||
|
|
AppConfig._internal();
|
||
|
|
|
||
|
|
factory AppConfig() {
|
||
|
|
_instance ??= AppConfig._internal();
|
||
|
|
return _instance!;
|
||
|
|
}
|
||
|
|
|
||
|
|
/// 环境配置
|
||
|
|
AppEnvironment _environment = AppEnvironment.development;
|
||
|
|
AppEnvironment get environment => _environment;
|
||
|
|
|
||
|
|
/// 切换环境
|
||
|
|
void setEnvironment(AppEnvironment env) {
|
||
|
|
_environment = env;
|
||
|
|
}
|
||
|
|
|
||
|
|
/// API 基础地址
|
||
|
|
String get baseUrl {
|
||
|
|
switch (_environment) {
|
||
|
|
case AppEnvironment.development:
|
||
|
|
return 'https://dev-api.xayunmei.com';
|
||
|
|
case AppEnvironment.staging:
|
||
|
|
return 'https://staging-api.xayunmei.com';
|
||
|
|
case AppEnvironment.production:
|
||
|
|
return 'https://api.xayunmei.com';
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
/// 环境枚举
|
||
|
|
enum AppEnvironment {
|
||
|
|
development,
|
||
|
|
staging,
|
||
|
|
production,
|
||
|
|
}
|