Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter flatter |如何编写一个方法从自定义类模型返回字符串列表?_Flutter_Dart_Flutter Dependencies - Fatal编程技术网

Flutter flatter |如何编写一个方法从自定义类模型返回字符串列表?

Flutter flatter |如何编写一个方法从自定义类模型返回字符串列表?,flutter,dart,flutter-dependencies,Flutter,Dart,Flutter Dependencies,类别: 您可以在调用API时创建这样的列表 [product_name: coke, id: 22, quantity: 1.0, product_id: 139, price: 20.0, user_id: 138, options: [], userphone: 9898565621, username: jamie] http.Response=wait http.get( 终结点。书, ); 如果(response.statusCode==200){ var parsed=jsonDe

类别:


您可以在调用API时创建这样的列表

[product_name: coke, id: 22, quantity: 1.0, product_id: 139, price: 20.0, user_id: 138, options: [], userphone: 9898565621, username: jamie]
http.Response=wait http.get(
终结点。书,
);
如果(response.statusCode==200){
var parsed=jsonDecode(response.body);
var bookData=parsed['books'];
List cart=bookData.map((e)=>cart.fromJson(e)).toList();
打印(数据);
返回数据;
}

和使用或创建数据类。

我创建了一个带有字符串值的示例映射,用于测试,下面是代码

http.Response response = await http.get(
      EndPoint.Book,
    );
    if (response.statusCode == 200) {
      var parsed = jsonDecode(response.body);
      var bookData = parsed['books'];
      List<Cart> cart= bookData.map<Cart>((e) => Cart.fromJson(e)).toList();
      print(data);
      return data;
    }
var-map=newmap();
map['product_name']='product.name';
映射[“id”]=“id”;
地图[“数量”]=“数量”;
map[“product_id”]=“product.id”;
map[“price”]=“product.price”;
映射[“用户id”]=“用户id”;
地图[“选项”]=“abc”;
map[“userphone”]=“currentUser.value.phone”;
map[“username”]=“currentUser.value.name”;
var keys=map.keys.toList();
var values=map.values.toList();
列表结果=列表();
int i=0;
values.map((值){
添加({keys[i]:value[i]});
i++;
}).toList();
打印(结果);
//您可以在这里返回结果

只需使用返回类型创建函数
列表
。推送列表中的所有值并返回它。如果你需要帮助,请告诉我。阿里,如果你能展示一个基于该示例方法的示例,那将非常有帮助。这件事已经讨论了好几天了。你能给我看看你期望的样本输出吗?@AdrianKarr所以你想要地图中的值,比如id,quantity。。。作为列表返回?@Henok,是的。作为字符串或动态值的列表。阿里:我已经在问题中添加了该方法的预期响应。。
http.Response response = await http.get(
      EndPoint.Book,
    );
    if (response.statusCode == 200) {
      var parsed = jsonDecode(response.body);
      var bookData = parsed['books'];
      List<Cart> cart= bookData.map<Cart>((e) => Cart.fromJson(e)).toList();
      print(data);
      return data;
    }
var map = new Map<String, dynamic>();
    map['product_name'] = 'product.name';
    map["id"] = 'id';
    map["quantity"] = 'quantity';
    map["product_id"] = 'product.id';
    map["price"] = 'product.price';
    map["user_id"] = 'userId';
    map["options"] = 'abc';
    map["userphone"] = 'currentUser.value.phone';
    map["username"] = 'currentUser.value.name';

    

    var keys = map.keys.toList();
    var values = map.values.toList();
    
    List result = List();
    int i = 0;
    values.map((value){
      result.add({keys[i] : values[i]});
      i++;
    }).toList();
  
    print(result);

    //you can return result here