Javascript 设置后如何取回文件,firebase?
在我设置了一个新的文档ID之后,如何才能取回文档ID 我有几次尝试,但以下是我最新的尝试:Javascript 设置后如何取回文件,firebase?,javascript,firebase,react-native,google-cloud-firestore,Javascript,Firebase,React Native,Google Cloud Firestore,在我设置了一个新的文档ID之后,如何才能取回文档ID 我有几次尝试,但以下是我最新的尝试: handleCreateCard = async (name, token) => { try { const new_card = await firestore() .collection('Cards') .doc() .set({ user_id: user.uid,
handleCreateCard = async (name, token) => {
try {
const new_card = await firestore()
.collection('Cards')
.doc()
.set({
user_id: user.uid,
name: name,
token: token,
})
.then(function(docRef) {
console.log("Document written with ID: ", docRef.id);
})
.then(() => this.props.navigation.navigate("CardDetail", {cardId: 2}));
// console.log("ATTEMPT !", handleCreateCard);
// console.log("ATTEMPT 2", new_card);
} catch (error) {
console.log(error.toString(error));
}
}
docRef
行获取错误:
错误:TypeError:null不是对象(计算'docRef.id')
日志处理卡
错误:ReferenceError:找不到变量:handleCreateCard
然后新卡
:“这是未定义的”
尝试做:
.then(docRef => {
console.log("Document written with ID: ", this.id); // also tried docRef.id
})
我得到了ID为未定义的文档
使用docRef.id:TypeError:null不是对象(评估'docRef.id')
文档也正在创建中,因此不确定为什么它不会返回
我已经尝试了几种方法来实现这一点,然后也尝试了上面提到的所有方法:
不知道为什么它不起作用
有什么帮助吗?如API文档中所述,如果没有参数,将立即返回一个已包含ID的
const docRef=wait firestore()
.收款(“卡”)
.doc()
const id=docRef.id
docRef
.set(…)
。然后(/*如果需要,请在此处使用id*/)
Hm,这很有效,谢谢。所以我想我先“创建”它,获取ID,然后设置?是这样吗?是的,随机ID是在实际创建文档之前在客户机上生成的。