地址切换
This commit is contained in:
65
ln_jq_app/lib/pages/url_host/controller.dart
Normal file
65
ln_jq_app/lib/pages/url_host/controller.dart
Normal file
@@ -0,0 +1,65 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:getx_scaffold/getx_scaffold.dart';
|
||||
import 'package:ln_jq_app/common/styles/theme.dart';
|
||||
import 'package:ln_jq_app/storage_service.dart';
|
||||
|
||||
class UrlHostController extends GetxController {
|
||||
final TextEditingController urlController = TextEditingController();
|
||||
|
||||
// 预设的域名列表
|
||||
final List<String> presetUrls = [
|
||||
'https://beta-esg.api.lnh2e.com/', // 测试环境
|
||||
'http://192.168.110.44:8080/', // 沈辰本地
|
||||
'http://192.168.110.222:8080/', // 何斐本地
|
||||
];
|
||||
|
||||
final List<String> urlNames = [
|
||||
'测试环境',
|
||||
'沈辰本地环境',
|
||||
'何斐本地环境',
|
||||
];
|
||||
|
||||
@override
|
||||
void onInit() {
|
||||
super.onInit();
|
||||
// 初始化时,尝试从 StorageService 获取已保存的域名
|
||||
// 如果没有保存过,则使用当前的全局配置
|
||||
String? savedUrl = StorageService.to.hostUrl;
|
||||
if (savedUrl != null && savedUrl.isNotEmpty) {
|
||||
urlController.text = savedUrl;
|
||||
} else {
|
||||
urlController.text = AppTheme.test_service_url;
|
||||
}
|
||||
}
|
||||
|
||||
/// 当用户点击列表中的某一项时,将其填入编辑框
|
||||
void selectUrl(String url) {
|
||||
urlController.text = url;
|
||||
}
|
||||
|
||||
/// 保存配置并关闭页面
|
||||
void saveAndExit() async {
|
||||
String newUrl = urlController.text.trim();
|
||||
if (newUrl.isEmpty) {
|
||||
showToast('请输入有效的域名');
|
||||
return;
|
||||
}
|
||||
|
||||
// 保存到本地存储,以便下次启动时加载
|
||||
await StorageService.to.saveHostUrl(newUrl);
|
||||
AppTheme.test_service_url = newUrl;
|
||||
|
||||
//设置框架
|
||||
HttpService.to.setBaseUrl(AppTheme.test_service_url);
|
||||
|
||||
showSuccessToast('域名已更新:${AppTheme.test_service_url}');
|
||||
Get.back();
|
||||
}
|
||||
|
||||
@override
|
||||
void onClose() {
|
||||
urlController.dispose();
|
||||
super.onClose();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user