我正在创建一个应用程序,它将使用地图类型将所有联系人上载到Firestore数据库。但是以下代码不会将联系人上传到Firestore。请帮忙。
我一直在尝试使用Flutter应用程序将手机中的联系人获取到Firestore。我使用contact_services库来获取联系人。即使尝试了一些类似的示例,我也无法使用地图类型与Firestore联系。我在哪里进行更改,以便可以将所有联系人作为地图值上传到Firestore
final Iterable<Contact> contacts = await ContactsService.getContacts(withThumbnails: false);
Firestore.instance
.collection('contacts')
.document(firebaseUser.uid)
.setData({
'contact':{ contacts.map((Contact contact){ 'name': contacts.displayName,contacts.phone})}
});
我希望将我的所有联系人显示在Firestore中,具有地图类型,但实际输出没有上载。
答案 0 :(得分:1)
我确定您已解决此问题,因为这是旧帖子。但是,您使用地图方法id Dart的方式有些错误。
您将元素变量命名为“ contact”,而不是“ contacts”,因此您应该引用该变量以获取信息。因此它将是contact.displayName。
您没有返回任何东西。因为没有“ =>”,所以没有隐式的收益,因为没有“ return”,所以没有显式的收益。
此外,您从map方法返回的内容是对联系人字段的迭代。
我不确定您要在这里完成什么。您是否要插入嵌套对象?如果是这样,则您的手机也缺少钥匙