如何将List <Class>上传到Cloud Firestore?

时间:2020-02-13 09:24:46

标签: flutter google-cloud-firestore

我的flutter应用程序具有一个“购物车”类,该类具有一个字符串值(即订单名称),一个是整数值(即订单数量)。当我将商品添加到购物车时,它将被添加到列表(使用提供程序),因此我如何将该列表上传到Firestore。

1 个答案:

答案 0 :(得分:1)

您可以在类中使用一些方法来与Map进行相互转换,然后将JSON字符串存储在Firestore中:

class Cart{
  String name;
  int quantity;

  Cart({
    this.name,
    this.quantity,
  });

  Cart.fromMap(Map<String, dynamic> map) :
    name = map['name'],
    quantity = map['quantity'];

  Map toMap(){
    return {
      'name': name,
      'quantity': quantity,
    };
  }
}

然后,您可以将方法的结果编码为JSON:

json.encode(Cart.toMap());

Cart.fromMap(json.decode(cartStringFromFirestore))