5.4 仅首次显示欢迎
实现步骤:

- APP 每次打开都会先到 Splash 界面
- 首次打开先去 Welcome 界面
- 以后直接去 Main 界面
第 1 步:定义常量
lib/common/values/constants.dart
| 1
 | static const storageFirstOpen = 'first_open'; 
 | 
第 2 步:ConfigService 配置
lib/common/services/config.dart
| 12
 3
 4
 5
 6
 7
 
 | bool get isFirstOpen => Storage().getBool(Constants.storageFirstOpen);
 
 
 void setAlreadyOpen() {
 Storage().setBool(Constants.storageFirstOpen, true);
 }
 
 | 
第 3 步:控制器
lib/pages/system/welcome/controller.dart
| 12
 3
 4
 5
 6
 7
 
 | @overridevoid onReady() {
 super.onReady();
 
 ConfigService().setAlreadyOpen();
 _initData();
 }
 
 | 
第 4 步:路由加入 main 定义
lib/common/routers/pages.dart
| 12
 3
 4
 5
 6
 7
 
 | static List<GetPage> list = [
 
 GetPage(
 name: RouteNames.main,
 page: () => const MainPage(),
 ),
 
 | 
最后:Splash 类
lib/pages/system/splash/controller.dart
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 
 | @overridevoid onReady() {
 super.onReady();
 
 FlutterNativeSplash.remove();
 
 
 if (ConfigService.to.isFirstOpen == false) {
 Get.offAllNamed(RouteNames.systemWelcome);
 } else {
 Get.offAllNamed(RouteNames.main);
 }
 }
 
 | 
提交代码到 git