[英]How to read Firebase document with auto generated document id using Javascript
[英]Firebase: how to add auto-generated document id to the document in svelte?
在 svelte 中添加具有自动生成的 id 的 firebase 文档的正确方法是什么?
到目前为止,我正在使用以下代码片段:
db.collection('colname').add({ id:'temp', text:'sometext' }).then(
result=>{
db.collection('colname').doc(result.id).update({id: result.id});
}
);
我不喜欢这个解决方案:
有没有更简洁的解决方案?
上下文:
我想将文档作为参数传递给一个苗条的 SvelteSubComponent:
let docs = [];
db.collection('colname').onSnapshot(data =>{
docs=data.docs;
});
(...)
{#each docs as doc}
<SvelteSubComponent {...doc.data()}/>
{/each}
我希望能够访问 SvelteSubComponent 中的文档 ID。
add()
方法每次都会生成一个随机的文档 ID。 如果您还想在文档数据中添加文档 ID,那么最好事先生成 ID,然后使用set()
创建具有该 ID 的文档:
const docId = db.collection('colname').doc().id
db.collection('colname').doc(docId).set({ id: docId, text:'sometext' }).then(() => {
console.log("Document added")
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.