Flutter Json int到双重解析颤振

Flutter Json int到双重解析颤振,flutter,dart,Flutter,Dart,问题是我想从这个:{“cost”:0}解析为double。所以我现在有: json['cost'].toDouble(),错误:未处理的异常:NoSuchMethodError:类“String”没有实例方法“toDouble” int.parse(json['cost']).toDouble(),错误:未处理的异常:类型'int'不是类型'String'的子类型 json['cost'],错误:未处理的异常:类型'int'不是类型'double'的子类型 完整代码: factory Shipp

问题是我想从这个:{“cost”:0}解析为double。所以我现在有:

  • json['cost'].toDouble(),错误:未处理的异常:NoSuchMethodError:类“String”没有实例方法“toDouble”
  • int.parse(json['cost']).toDouble(),错误:未处理的异常:类型'int'不是类型'String'的子类型
  • json['cost'],错误:未处理的异常:类型'int'不是类型'double'的子类型
  • 完整代码:

    factory ShippingMethod.fromJson(Map<String, dynamic> json) {
        dynamic cost = json['cost'];
        print(cost.runtimeType);  // printing runtime type and I get it twice!
        return ShippingMethod(
          code: json['code'],
          title: json['title'],
          description: json['description'],
          cost: cost.toDouble(),
          taxClassId: json['tax_class_id'],
        );
      }
    
    此外,以下是我从服务器获得的信息:

    ...
    "pickup": {
                            "code": "pickup.pickup",
                            "title": "Standard",
                            "description": "If the cost of the order ...",
                            "cost": 0,
                            "tax_class_id": 0,
                            "text": "0.00 TMT"
                        }
    ...
    
    达特让我开心!。。是虫子还是什么

  • 要将字符串转换为double,我们有一个函数:
    double.parse(string)
  • json[“cost”]
    正在返回一个int值,因此我们应该将其转换为字符串,然后将其传递给“
    double.parse(string)
  • 解决方案代码:

    double.parse(json["cost"].toString());
    
  • 要将字符串转换为double,我们有一个函数:
    double.parse(string)
  • json[“cost”]
    正在返回一个int值,因此我们应该将其转换为字符串,然后将其传递给“
    double.parse(string)
  • 解决方案代码:

    double.parse(json["cost"].toString());
    
    魔术“toString”))魔术“toString”))