Blame view

lib/pages/repeatafter/bloc/repeat_after_bloc.dart 1.07 KB
9d080046   liangchengyou   feat:视频跟读逻辑
1
2
3
  import 'package:flutter/cupertino.dart';
  import 'package:flutter_bloc/flutter_bloc.dart';
  import 'package:flutter_easyloading/flutter_easyloading.dart';
6f617434   liangchengyou   feat:磨耳朵/视频跟读列表页接口调整
4
5
6
7
  import 'package:wow_english/common/request/dao/listen_dao.dart';
  import 'package:wow_english/common/request/exception.dart';
  import 'package:wow_english/models/follow_read_entity.dart';
  import 'package:wow_english/utils/loading.dart';
9d080046   liangchengyou   feat:视频跟读逻辑
8
9
10
11
12
  
  part 'repeat_after_event.dart';
  part 'repeat_after_state.dart';
  
  class RepeatAfterBloc extends Bloc<RepeatAfterEvent, RepeatAfterState> {
6f617434   liangchengyou   feat:磨耳朵/视频跟读列表页接口调整
13
14
15
16
  
    List<FollowReadEntity?> _listData = [];
    List<FollowReadEntity?> get listData => _listData;
  
9d080046   liangchengyou   feat:视频跟读逻辑
17
    RepeatAfterBloc() : super(RepeatAfterInitial()) {
842b7132   liangchengyou   feat:磨耳朵/练习页面调整
18
      on<RequestDataEvent>(_requestData);
9d080046   liangchengyou   feat:视频跟读逻辑
19
20
21
    }
  
  
842b7132   liangchengyou   feat:磨耳朵/练习页面调整
22
    void _requestData(RequestDataEvent event, Emitter<RepeatAfterState> emitter) async {
6f617434   liangchengyou   feat:磨耳朵/视频跟读列表页接口调整
23
24
25
      try {
        await loading(() async {
          _listData = await ListenDao.followRead()??[];
842b7132   liangchengyou   feat:磨耳朵/练习页面调整
26
          emitter(RequestDataState());
6f617434   liangchengyou   feat:磨耳朵/视频跟读列表页接口调整
27
28
29
30
31
32
        });
      } catch (e) {
        if (e is ApiException) {
          EasyLoading.showToast(e.message??'请求失败,请检查网络连接');
        }
      }
9d080046   liangchengyou   feat:视频跟读逻辑
33
34
    }
  }