Flutter Firebase Firestore 列表数据保存无法调用索引为

Flutter Firebase Firestore List Data Saving Cannot Recall Index as

当我从项目中的用户处执行 activity 时,我会获取即时位置并使用 firebase 和 firestore 保存它。但是当我回调查询时,我得到了我保存在列表中的所有内容。我只是希望它作为索引索引出现。例如 1-“kosum1”。我该怎么做?

dataBaseSave() async {
final User user = auth.currentUser;
await _geolocator
    .getCurrentPosition(desiredAccuracy: LocationAccuracy.high)
    .then((Position position) {
  setState(() {
    _currentPosition = position;
    GeoFirePoint point = geo.point(
        latitude: position.latitude, longitude: position.longitude);
    FirebaseFirestore.instance.collection('Test').add({
      'Liste': FieldValue.arrayUnion(
          [nb1, kosuadi, user.uid, position.latitude, position.longitude])
    });
    nb1++;
  });
});}

数据调用:

getData() async {
FirebaseFirestore.instance
    .collection('Test')
    .where(('Liste'), arrayContains: "kosum1")
    .get()
    .then((value) {
  value.docs.forEach((result) {
   list = result.data();
   var list2 = list.values.toList();
   print(list2);
  });
});}

输出:

Firebase Firestore 我的 Collection:

您可以使用 List.asMap() 方法将其索引的 List 转换为列表值的 Map

The map uses the indices of this list as keys and the corresponding objects as values.

更改这部分代码:

list = result.data();
var list2 = list.values.toList();
print(list2); //[0, kosum1, ...]

对此:

list = result.data();
var map = list.asMap();
print(map);  //[0: 0, 1: kosum1, ...]