Blame view

lib/pages/repeatafter/bloc/repeat_after_bloc.dart 1.05 KB
9d080046   liangchengyou   feat:视频跟读逻辑
1
2
  import 'package:flutter/cupertino.dart';
  import 'package:flutter_bloc/flutter_bloc.dart';
6f617434   liangchengyou   feat:磨耳朵/视频跟读列表页接口调整
3
4
5
6
  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';
c61b3c1a   Key   feat: toast_util....
7
  import 'package:wow_english/utils/toast_util.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
    List<FollowReadEntity?> _listData = [];
c61b3c1a   Key   feat: toast_util....
14
  
6f617434   liangchengyou   feat:磨耳朵/视频跟读列表页接口调整
15
16
    List<FollowReadEntity?> get listData => _listData;
  
9d080046   liangchengyou   feat:视频跟读逻辑
17
    RepeatAfterBloc() : super(RepeatAfterInitial()) {
842b7132   liangchengyou   feat:磨耳朵/练习页面调整
18
      on<RequestDataEvent>(_requestData);
9d080046   liangchengyou   feat:视频跟读逻辑
19
20
    }
  
842b7132   liangchengyou   feat:磨耳朵/练习页面调整
21
    void _requestData(RequestDataEvent event, Emitter<RepeatAfterState> emitter) async {
6f617434   liangchengyou   feat:磨耳朵/视频跟读列表页接口调整
22
23
      try {
        await loading(() async {
c61b3c1a   Key   feat: toast_util....
24
          _listData = await ListenDao.followRead() ?? [];
842b7132   liangchengyou   feat:磨耳朵/练习页面调整
25
          emitter(RequestDataState());
6f617434   liangchengyou   feat:磨耳朵/视频跟读列表页接口调整
26
27
28
        });
      } catch (e) {
        if (e is ApiException) {
c61b3c1a   Key   feat: toast_util....
29
          showToast(e.message ?? '请求失败,请检查网络连接');
6f617434   liangchengyou   feat:磨耳朵/视频跟读列表页接口调整
30
31
        }
      }
9d080046   liangchengyou   feat:视频跟读逻辑
32
33
    }
  }