gpt4 book ai didi

javascript - Firestore 在函数之外获取 ref.id

转载 作者:行者123 更新时间:2023-12-03 02:39:34 26 4
gpt4 key购买 nike

我在使用 Firestore 和 Angular 5 时有一个相关问题(请参阅最后的链接):

    db.collection('posts')
.add({title: 'Hello World'})
.then(function(docRef) {
console.log('The auto-generated ID is', docRef.id)
postKey = docRef.id
});

这在我的代码中不起作用!我可以在 console.log() 中看到正确的 docRef.id,但是当我将 {{postKey}} 添加到 html 文件时,无法在函数外部访问 postKey - 我做错了什么? =/

我尝试了以下方法:

myFunction(a, b) {

var postKey: string = "waiting";
console.log(postKey);

let x = this.db.collection('mydocs').add({
a: a,
b: b
}).then(function(docRef) {
console.log(docRef.id);
postKey = JSON.stringify(docRef.id);
return postKey;
}).catch(function (error) {
console.error("Error creating document: ", error);
});

console.log(postKey);
this.x = postKey;
console.log(x);
};

但是我要么得到一个空的可观察值,要么根本无法访问该变量。x 在这种情况下是一个可观察的,但我需要以某种方式提取项目 docRef.id - 只需使用

this.myNeededDocrefId = x.docRef.id 不起作用!

相关问题:Can I get the generated ID for a document created with batch().set using Firestore?

问题的作者说“你可以轻松获取 id”,但没有解释如何获取。

最佳答案

我终于找到了解决方案:

x.then((value) => {
console.log("Retrieved: ", value);
this.myService.ID = value;
});

关于javascript - Firestore 在函数之外获取 ref.id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48390280/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com