【问题标题】:Flutter - 'List<dynamic>' is not a subtype of typeFlutter - 'List<dynamic>' 不是类型的子类型
【发布时间】:2021-10-17 16:30:01
【问题描述】:

我一直在寻找一个 WordPress + Flutter App 集成并找到了一个不错的,但我收到了以下错误消息:

我很高兴这是一个简单的错误,但我更喜欢设计人员而不是开发人员,所以如果你们中的一些人能给我一些提示,那就太好了。提前致谢!

import 'dart:convert';

    import 'package:http/http.dart' as http;

    import '../config.dart';
    import '../model/post_entity.dart';

    class WpApi {
    static const String BASE_URL = URL + REST_URL_PREFIX + '/wp/v2/';

    static Future<List<PostEntity>> getPostsList(
      {int category = 0, int page = 1}) async {
    var posts = [];
    try {
      String extra = category != 0 ? '&categories=' + '$category' : '';

      dynamic response = await http.get(Uri.parse(BASE_URL +
          '''
      posts?_embed&page=$page''' +
          extra));
      dynamic json = jsonDecode(response.body);

      (json as List).forEach((v) {
        posts.add(PostEntity.fromJson(v));
      });
     } catch (e) {
      //TODO Handle No Internet Response
    }
    return posts;
    }

     static Future<List<PostCategory>> getCategoriesList({int page = 1}) async {
    List<PostCategory> categories = [];
    try {
      dynamic response = await http.get(Uri.parse(BASE_URL +
          'categories?orderby=count&order=desc&per_page=15&page=$page'));
      dynamic json = jsonDecode(response.body);

      (json as List).forEach((v) {
        categories.add(PostCategory.fromJson(v));
      });
     } catch (e) {
      //TODO Handle No Internet Response
     }
     return categories;
     }
     }


错误在于返回posts

Exception has occurred.
_TypeError (type 'List<dynamic>' is not a subtype of type 'FutureOr<List<PostEntity>>')

【问题讨论】:

    标签: flutter dart dart-html


    【解决方案1】:

    var posts = [] 更改为List&lt;PostEntity&gt; posts = []

      static Future<List<PostEntity>> getPostsList(
          {int category = 0, int page = 1}) async {
        List<PostEntity> posts = []; //<-- change var posts = [] to List<PostEntity> posts = []
        try { ...
    

    【讨论】:

    • 嘿,@Mehdi,谢谢!现在我得到了类别列表,但仍然没有得到帖子。你能发现我的代码有什么问题吗?
    猜你喜欢
    • 2021-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-09
    • 1970-01-01
    • 2022-11-11
    • 2023-01-07
    相关资源
    最近更新 更多