Blame view

lib/login/blocs/login_bloc.dart 1.12 KB
2a29701f   liangchengyou   feat:提交代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
  import 'package:flutter/foundation.dart';
  import 'package:flutter_bloc/flutter_bloc.dart';
  import 'package:flutter_easyloading/flutter_easyloading.dart';
  import 'package:wow_english/network/api.dart';
  import 'package:wow_english/network/network_manager.dart';
  
  part 'login_event.dart';
  part 'login_state.dart';
  
  class LoginBloc extends Bloc<LoginEvent, LoginState> {
  
    bool _isLogin = false;
  
    bool get isLogin => _isLogin;
  
    LoginBloc() : super(LoginInitial()) {
      on<RequestLoginEvent>(_requestLoginApi);
    }
  
  
    void _requestLoginApi(RequestLoginEvent event, Emitter<LoginState> emitter) async {
      EasyLoading.show(status: 'loading');
      await DioUtil().requestData(
          Api.testApi,
          successCallBack: (dynamic data){
           EasyLoading.dismiss();
           if (kDebugMode) {
             print(data);
           }
           _isLogin = true;
           emitter(LoginEventChangeState());
          },
          errorCallBack: (dynamic error){
            EasyLoading.dismiss();
            if (kDebugMode) {
              print(error);
            }
            _isLogin = false;
            emitter(LoginEventChangeState());
          });
    }
  }