[使用以下测试代码在Firebase中创建新实体时:
class Person{
String name;
int age;
Person({this.name, this.age});
}
Person person = new Person(name: 'John', age: '42');
.
.
.
aMethod async() {
Firestore _firestore = Firestore.instance;
var firestoreResult = await _firestore.collection('Example').add({
'name': person.name,
'age': person.age
});
}
我想从Firebase检索其密钥。
我在调试模式下看到,firestoreResult在其参数内返回所需的键,如下所示:
firestoreResult._delegate._pathComponents[1]
问题是它的参数是私有的,因此出现以下错误:
The getter _delegate is not defined for the class DocumentReference
要获取文档ID,请尝试以下操作:
var firestoreResult = await _firestore.collection('Example').add({
'name': person.name,
'age': person.age
});
var documentId = firestoreResult.documentID;
add()
方法返回类型为Future
的DocumentReference
,并且在类DocumentReference
中,可以使用属性documentID
获取ID: