Commit b830911beb645cc78d2f9ba9916cf44af0db9c2c

Authored by Key
1 parent 795acc7e

增加头像上传的地方,待测试

lib/pages/user/modify/modify_user_avatar_page.dart
... ... @@ -39,7 +39,7 @@ class _ModifyUserAvatarPage extends StatelessWidget {
39 39 showToast('修改成功');
40 40 }
41 41 }),
42   - BlocListener(
  42 + BlocListener<UserAvatarBloc,UserAvatarState>(
43 43 listener: (context,state){
44 44 if (state is ChangeImageState) {
45 45 showToast('上传图片');
... ... @@ -202,4 +202,4 @@ class _ModifyUserAvatarPage extends StatelessWidget {
202 202 ],
203 203 );
204 204 });
205   -}
206 205 \ No newline at end of file
  206 +}
... ...
lib/pages/user/modify/user_avatar_bloc/user_avatar_bloc.dart
... ... @@ -32,13 +32,18 @@ class UserAvatarBloc extends Bloc&lt;UserAvatarEvent, UserAvatarState&gt; {
32 32 on<GetImageFromCameraEvent>(_getImageFromCamera);
33 33 }
34 34  
  35 + Future<void> _uploadAvatar(String imagePath) async {
  36 + // todo 加个loading UI
  37 + String avatarUrl = await AliyunOssUtil.uploadFile(imagePath);
  38 + // 上传服务器
  39 + await UserDao.updateUserInfoField(avatarUrl: avatarUrl);
  40 + _imageUrl = avatarUrl;
  41 + }
  42 +
35 43 void _changeImage(ChangeImageEvent event, Emitter<UserAvatarState> emitter) async {
36   - _imageUrl = event.imagePath;
  44 + //_imageUrl = event.imagePath;
37 45 try {
38   - // todo 加个loading UI
39   - String avatarUrl = await AliyunOssUtil.uploadFile(event.imagePath);
40   - // 上传服务器
41   - await UserDao.updateUserInfoField(avatarUrl: avatarUrl);
  46 + await _uploadAvatar(event.imagePath);
42 47 emitter(ChangeImageState());
43 48 } catch (e) {
44 49 Log.e('上传头像失败:$e');
... ... @@ -52,7 +57,13 @@ class UserAvatarBloc extends Bloc&lt;UserAvatarEvent, UserAvatarState&gt; {
52 57 return;
53 58 }
54 59 _file = await picker.pickImage(source: ImageSource.gallery);
55   - emitter(ChangeImageState());
  60 + try {
  61 + await _uploadAvatar(_file!.path);
  62 + emitter(ChangeImageState());
  63 + } catch (e) {
  64 + Log.e('上传头像失败:$e');
  65 + }
  66 + //emitter(ChangeImageState());
56 67 });
57 68 }
58 69  
... ... @@ -63,7 +74,13 @@ class UserAvatarBloc extends Bloc&lt;UserAvatarEvent, UserAvatarState&gt; {
63 74 return;
64 75 }
65 76 _file = await picker.pickImage(source: ImageSource.camera);
66   - emitter(ChangeImageState());
  77 + try {
  78 + await _uploadAvatar(_file!.path);
  79 + emitter(ChangeImageState());
  80 + } catch (e) {
  81 + Log.e('上传头像失败:$e');
  82 + }
  83 + //emitter(ChangeImageState());
67 84 });
68 85 }
69 86  
... ...