我在用什么
- Angular
- FireStore
我要实现的目标
使用 'add' 方法创建一个新项
导航到包含“add”方法生成的新 ID 的 URL
问题
- 我可以很好地创建一个新项目
- 不知道如何获取新建item的id
- 我总是以我所在页面的 ID 结尾
问题
- 如何在创建新项目并在路由器链接中使用它时获取新项目的 ID?
组件 TS
如您所见,在我的路由器中,我放置了一个占位符“newId”。这是我想作为刚刚由“添加”部分创建的项目的 ID 的部分。
addTemplateProject() {
var album_title = new Date();
const newAlbum: any = { project_title }
this.albumCollection.add(newAlbum);
this.router.navigate(['folders', this.folderId, 'albums', newId, 'edit']);
}
最佳答案
喜欢documentation状态:
// Add a new document with a generated id.
db.collection("cities").add({
name: "Tokyo",
country: "Japan"
})
.then(function(docRef) {
console.log("Document written with ID: ", docRef.id);
})
.catch(function(error) {
console.error("Error adding document: ", error);
});
您可以获取添加成功的引用。在你的情况下:
this.albumCollection.add(newAlbum).then(function(ref) {console.log(ref.id});
关于javascript - Angular/Firestore - 获取由 'add' 方法创建的 ID 以用于路由器导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46646921/