video_rank_provider.dart 704 B

123456789101112131415161718192021222324252627
  1. import 'package:flutter_riverpod/flutter_riverpod.dart';
  2. import 'package:news_app/constant/api_const.dart';
  3. import '../http/http_util.dart';
  4. import '../http/model_parser.dart';
  5. import '../model/video_new_model.dart';
  6. /// @author: bo.zeng
  7. /// @email: cnhbwds@gmail.com
  8. /// @date: 2025 2025/4/21 13:38
  9. /// @description:
  10. class VideoRankProvider extends Notifier<List<VideoNewModel>> {
  11. @override
  12. List<VideoNewModel> build() {
  13. return List<VideoNewModel>.empty();
  14. }
  15. Future<void> fetchRankVideos() async {
  16. final jsonData = await HttpUtil().get(apiVideoList);
  17. final data = ModelParser.parseList<VideoNewModel>(
  18. jsonData,
  19. VideoNewModel.fromJson,
  20. );
  21. state = data;
  22. }
  23. }