希望一切都好。 提醒一下,我仍在学习,并且对 flutter 和 Dart 仍然很陌生,所以,如果我的代码看起来很愚蠢,那就是原因。
我正在尝试从 Firestore 的特定文档中获取数据。然后显示为列表磁贴。我试图将数据保存到一个局部变量(列表)中,我用它来制作列表。
但我收到一个错误,该错误并没有说明它发生在哪里,这使得它很难修复。 这是函数和变量。
final uid = FirebaseAuth.instance.currentUser.uid;
List<PhoneModel> _phones = [];
Future<void> _getPhones() async {
var phones = await FirebaseFirestore.instance
.collection('phones')
.doc('5AfeF8xkdbM2xgXheDaK5OcDeT63')
.get();
List<PhoneModel> loadedPhones = [];
phones.data().forEach((key, value) {
loadedPhones.add(PhoneModel(
descriptions: value['description'],
price: value['Price'],
title: value['Title'],
id: key));
_phones = loadedPhones;
return _phones;
});
}
这里是错误
[ERROR:flutter/lib/ui/ui_dart_state.cc(186)] Unhandled Exception: type 'String' is not a subtype of type 'int' of 'index'
E/flutter (32763): #0 _UserPhoneAddsState._getPhones.<anonymous closure>
package:secondhandphones/…/CreateEditPhone/UpdatePhone.dart:32
E/flutter (32763): #1 _LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:397:8)
E/flutter (32763): #2 _UserPhoneAddsState._getPhones
package:secondhandphones/…/CreateEditPhone/UpdatePhone.dart:30
E/flutter (32763): <asynchronous suspension>
编辑:这是根据评论的电话模型类
class PhoneModel {
final String title;
final String id;
final String descriptions;
final num price;
PhoneModel({
this.descriptions,
this.id,
this.price,
this.title,
});
}
请告诉我是否需要发布其他内容 感谢您的帮助