Blame view

lib/pages/home/bloc/home_bloc.dart 1.08 KB
d35a4e87   liangchengyou   feat:磨耳朵功能UI
1
2
  import 'package:flutter/cupertino.dart';
  import 'package:flutter_bloc/flutter_bloc.dart';
993c1a04   liangchengyou   feat:添加数据模型
3
  import 'package:flutter_easyloading/flutter_easyloading.dart';
13e6d11d   liangchengyou   feat:首页课程模块接口
4
5
6
  import 'package:wow_english/common/request/dao/home_dao.dart';
  import 'package:wow_english/common/request/exception.dart';
  import 'package:wow_english/utils/loading.dart';
60e47f7c   liangchengyou   feat:课程选择功能
7
8
9
10
11
  
  part 'home_event.dart';
  part 'home_state.dart';
  
  class HomeBloc extends Bloc<HomeEvent, HomeState> {
13e6d11d   liangchengyou   feat:首页课程模块接口
12
    HomeBloc() : super(HomeInitial()) {
993c1a04   liangchengyou   feat:添加数据模型
13
      on<RequestDataEvent>(_requestData);
60e47f7c   liangchengyou   feat:课程选择功能
14
    }
13e6d11d   liangchengyou   feat:首页课程模块接口
15
16
17
18
19
20
21
22
23
  
    Future<void> requestData() async {
      try {
        await loading(() async {
          HomeDao.courseLesson();
          emit(HomeDataLoadState());
        });
      } catch (e) {
        if (e is ApiException) {
993c1a04   liangchengyou   feat:添加数据模型
24
25
26
27
          EasyLoading.showToast(e.message.toString());
        }
      }
    }
13e6d11d   liangchengyou   feat:首页课程模块接口
28
  
993c1a04   liangchengyou   feat:添加数据模型
29
30
31
32
33
34
35
36
37
    void _requestData(RequestDataEvent event, Emitter<HomeState> emitter) async {
      try {
        await loading(() async {
          HomeDao.courseLesson();
          emitter(HomeDataLoadState());
        });
      } catch (e) {
        if (e is ApiException) {
          EasyLoading.showToast(e.message.toString());
13e6d11d   liangchengyou   feat:首页课程模块接口
38
39
40
        }
      }
    }
60e47f7c   liangchengyou   feat:课程选择功能
41
  }
993c1a04   liangchengyou   feat:添加数据模型