Commit b830911beb645cc78d2f9ba9916cf44af0db9c2c
1 parent
795acc7e
增加头像上传的地方,待测试
Showing
2 changed files
with
26 additions
and
9 deletions
lib/pages/user/modify/modify_user_avatar_page.dart
@@ -39,7 +39,7 @@ class _ModifyUserAvatarPage extends StatelessWidget { | @@ -39,7 +39,7 @@ class _ModifyUserAvatarPage extends StatelessWidget { | ||
39 | showToast('修改成功'); | 39 | showToast('修改成功'); |
40 | } | 40 | } |
41 | }), | 41 | }), |
42 | - BlocListener( | 42 | + BlocListener<UserAvatarBloc,UserAvatarState>( |
43 | listener: (context,state){ | 43 | listener: (context,state){ |
44 | if (state is ChangeImageState) { | 44 | if (state is ChangeImageState) { |
45 | showToast('上传图片'); | 45 | showToast('上传图片'); |
@@ -202,4 +202,4 @@ class _ModifyUserAvatarPage extends StatelessWidget { | @@ -202,4 +202,4 @@ class _ModifyUserAvatarPage extends StatelessWidget { | ||
202 | ], | 202 | ], |
203 | ); | 203 | ); |
204 | }); | 204 | }); |
205 | -} | ||
206 | \ No newline at end of file | 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<UserAvatarEvent, UserAvatarState> { | @@ -32,13 +32,18 @@ class UserAvatarBloc extends Bloc<UserAvatarEvent, UserAvatarState> { | ||
32 | on<GetImageFromCameraEvent>(_getImageFromCamera); | 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 | void _changeImage(ChangeImageEvent event, Emitter<UserAvatarState> emitter) async { | 43 | void _changeImage(ChangeImageEvent event, Emitter<UserAvatarState> emitter) async { |
36 | - _imageUrl = event.imagePath; | 44 | + //_imageUrl = event.imagePath; |
37 | try { | 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 | emitter(ChangeImageState()); | 47 | emitter(ChangeImageState()); |
43 | } catch (e) { | 48 | } catch (e) { |
44 | Log.e('上传头像失败:$e'); | 49 | Log.e('上传头像失败:$e'); |
@@ -52,7 +57,13 @@ class UserAvatarBloc extends Bloc<UserAvatarEvent, UserAvatarState> { | @@ -52,7 +57,13 @@ class UserAvatarBloc extends Bloc<UserAvatarEvent, UserAvatarState> { | ||
52 | return; | 57 | return; |
53 | } | 58 | } |
54 | _file = await picker.pickImage(source: ImageSource.gallery); | 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<UserAvatarEvent, UserAvatarState> { | @@ -63,7 +74,13 @@ class UserAvatarBloc extends Bloc<UserAvatarEvent, UserAvatarState> { | ||
63 | return; | 74 | return; |
64 | } | 75 | } |
65 | _file = await picker.pickImage(source: ImageSource.camera); | 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 |