api - 类型 'String' 不是 get 方法 flutter 中类型 'Null' 的子类型

标签 api flutter get flutter-dependencies

我收到此错误:在 get 方法 flutter 中,“String”类型不是“Null”类型的子类型
这是我使用的 get api 函数

 Future<Stream<ServiceTypes>> getServiceTypesa() async {
 final String url = 'https://test.com';

 final client = new http.Client();
 final streamedRest = await client.send(
   http.Request('get', Uri.parse(url))
 );

 return streamedRest.stream 
     .transform(utf8.decoder)
     .transform(json.decoder)
     .expand((data) => (data as List))
     .map((data) => ServiceTypes.fromJson(data));
}
你可以在这里看到函数检测数据
data from json
我也看到了这个错误
StateError(错误状态:Stream 已被监听。)
和这个错误
error
这是我的聆听功能
  @override
  void initState() {
    _serviceTypes = new List<ServiceTypes>();
    listenForServiceTypes();
    super.initState();
  }

  void listenForServiceTypes() async {
    setState(() {
      this._show_serviceTypesProgress = true;
    });
    final Stream<ServiceTypes> stream = await getServiceTypesa();

    stream.listen((ServiceTypes serviceTypes) =>
        setState(() => _serviceTypes.add(serviceTypes)));

    setState(() {
      this._show_serviceTypesProgress = false;
    });

    print(_serviceTypes);
  }
这是我做的模型
enter image description here
我不知道有什么问题,因为打印函数返回:[]

最佳答案

当您创建模型时,图像类型值为空,因此,该模型是使用 Null 类型的图像创建的,但是当图像不是来自服务器的空类型时,它会给您一个错误

     type 'String' is not a subtype of type 'Null' in get method flutter 

因为您的图像类型是来自服务器的 String 并且您通过 Null 对象获取值,所以使用 String 类型对象来获取字符串值或图像。

用这个
  Class ServiceTypes{
  String image;

代替
   Class ServiceTypes{
   Null image;

关于api - 类型 'String' 不是 get 方法 flutter 中类型 'Null' 的子类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59955033/

相关文章:

flutter - 如何在 dart 中等待 Map.forEach()

button - 如何创建带有彩色阴影的渐变按钮

java - 使用 Java 获取 Solr Server 的架构以查找复制字段

Javascript - Vue js 从文件中获取

javascript - 在页面加载时运行 JS 函数

用于财务数据的 Java API

c++ - 轮询事件API的设计

flutter - 在 flutter 安装中运行 Pub Upgrade 花费太多时间

php - Linkedin 连接 API 上的随机内部服务错误

api - Instagram API错误: Client request limit reached