Skip to content
This repository has been archived by the owner on Feb 14, 2022. It is now read-only.

Commit

Permalink
优化代码
Browse files Browse the repository at this point in the history
  • Loading branch information
januwA committed Jul 7, 2019
1 parent fa579b6 commit fbd4c3d
Show file tree
Hide file tree
Showing 5 changed files with 74 additions and 19 deletions.
10 changes: 2 additions & 8 deletions lib/pages/recently_updated/recently_updated_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_mobx/flutter_mobx.dart';
import 'package:flutter_video_app/pages/recently_updated/recently_updated.store.dart';
import 'package:flutter_video_app/shared/widgets/anime_card.dart';
import 'package:flutter_video_app/shared/widgets/sliver_loading.dart';

RecentlyUpdatedStore recentlyUpdatedStore = RecentlyUpdatedStore();

Expand Down Expand Up @@ -34,14 +35,7 @@ class _RecentlyUpdatedPageState extends State<RecentlyUpdatedPage> {
AnimeCard(animeData: anime),
],
)
: SliverToBoxAdapter(
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Center(
child: CircularProgressIndicator(),
),
),
);
: SliverLoading();
},
),
],
Expand Down
10 changes: 2 additions & 8 deletions lib/pages/recommend/recommend_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_mobx/flutter_mobx.dart';
import 'package:flutter_video_app/pages/recommend/recommend.store.dart';
import 'package:flutter_video_app/shared/widgets/anime_card.dart';
import 'package:flutter_video_app/shared/widgets/sliver_loading.dart';

RecommendStore recommendStore = RecommendStore();

Expand Down Expand Up @@ -34,14 +35,7 @@ class _RecommendPageState extends State<RecommendPage> {
AnimeCard(animeData: anime),
],
)
: SliverToBoxAdapter(
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Center(
child: CircularProgressIndicator(),
),
),
);
: SliverLoading();
},
),
],
Expand Down
16 changes: 16 additions & 0 deletions lib/shared/widgets/sliver_loading.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import 'package:flutter/material.dart';

class SliverLoading extends StatelessWidget {
@override
Widget build(BuildContext context) {
double height = MediaQuery.of(context).size.height;
return SliverToBoxAdapter(
child: Container(
height: height,
child: Center(
child: CircularProgressIndicator(),
),
),
);
}
}
20 changes: 17 additions & 3 deletions lib/store/version/version.service.dart
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,25 @@ abstract class _VersionService with Store {
@observable
bool permissisonReady = false;

@observable
Map<String, dynamic> _latestData;

@action
setLatestData(Map<String, dynamic> data) {
_latestData = data;
}

/// github 上最新版本的数据
@computed
Future<Map<String, dynamic>> get latestData async {
var r = await http.get(
'https://api.github.com/repos/januwA/flutter_anime_app/releases/latest');
return jsonDecode(r.body);
if (_latestData == null) {
var r = await http.get(
'https://api.github.com/repos/januwA/flutter_anime_app/releases/latest');
setLatestData(jsonDecode(r.body));
return _latestData;
} else {
return _latestData;
}
}

/// 用户本地版本
Expand Down
37 changes: 37 additions & 0 deletions lib/store/version/version.service.g.dart

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit fbd4c3d

Please sign in to comment.