首页 > 解决方案 > 在颤振飞镖应用程序中出现错误。未为“DocumentSnapshot”类型定义运算符“[]”。尝试定义运算符'[]'

问题描述

这是我的代码。我尝试使用 data() 代替,但这也不起作用。

  Future getUserInterests(userId) async {
    User currentUser = User();

    await _firestore.collection('users').doc(userId).get().then((user) {
      currentUser.name = user['name'];
      currentUser.photo = user['photoUrl'];
      currentUser.gender = user['gender'];
      currentUser.interestedIn = user['interestedIn'];
    });
    return currentUser;
  }

标签: firebaseflutterdartgoogle-cloud-firestore

解决方案


您需要调用data()以获取DocumentSnapshot中的数据。

Map<String, dynamic> data = user.data();
currentUser.name = data['name'];

推荐阅读