簡體   English   中英

“Null”類型不是“Map”類型的子類型<string, dynamic> ' flutter 錯誤</string,>

[英]type 'Null' is not a subtype of type 'Map<String, dynamic>' flutter error

我得到錯誤:

“Null”不是類型轉換中“Map<String, dynamic>”類型的子類型

 @override
  void initState() {
    FirebaseFirestore.instance.collection('user').doc(widget.id);
    AsyncSnapshot<DocumentSnapshot>? snapshot;
    Map<String, dynamic> data = snapshot?.data!.data() as Map<String, dynamic>;
    
    super.initState();
  }

snapshot?.data..data()評估為 null,因為snapshot是 null。 並嘗試將其轉換為帶有as Map<String, dynamic>的 map 會引發此錯誤。

要修復它,請使用這樣的三元運算符(假設data不應為空):

Map<String, dynamic> data = snapshot?.data?.data() != null
  ? snapshot?.data!.data()! as Map<String, dynamic>
  : <String, dynamic>{};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM