- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在 Angular 4 应用程序中使用 Angularfire2。我可以使用 AngularFirestoreCollection 从我的 firestore 中获取对象集合。但是,当我遍历集合中的文档时,我注意到文档不包含文档键。所以,我不认为我有任何方法可以做一些事情,比如从 UI 的列表中删除文档,因为我不知道与文档关联的 key 。这是我的代码:
export class CategoryComponent implements OnInit {
private categoryCollection: AngularFirestoreCollection<any>;
public categories: Observable<any[]>;
public category: Category;
constructor(public db: AngularFirestore, private router: Router) {
this.categoryCollection = db.collection<any>('categories');
this.categories = this.categoryCollection.valueChanges();
this.category = new Category();
}
}
该代码为我提供了一个如下所示的集合:
{name: 'Some name'}
我期望的是:
{key: 'theKey', name: 'Some name'}
我一直在看 github 上的文档,但我要么是盲人,要么文档没有显示我做错了什么。也许我只是不知道 firebase 如何将文档发回集合中?
最佳答案
.valueChanges()
方法只会为您提供数据。如果您也需要 key ,您可以使用 .snapshotChanges()
和
.map((actions: any) => {
return actions.map(action => {
const data = action.payload.doc.data();
const key = action.payload.doc.id;
return {key, ...data};
});
});
为了也添加文档 key
在您的上下文中可能看起来像这样
this.categories = this.categoryCollection.snapshotChanges().map((actions: any) => {
return actions.map(action => {
const data = action.payload.doc.data();
const key = action.payload.doc.id;
return {key, ...data};
});
});
这应该会给你想要的数据
关于javascript - Angularfire2 AngularFirestoreCollection 不发送集合中每个对象的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46735252/
我正在尝试查询一个集合并根据另一个查询返回更改数据结果。 我的聊天结构是这样的: let chat = { id: "userId1" + "userId2", lastMessage: ""
我正在尝试在 Angular 4 应用程序中使用 Angularfire2。我可以使用 AngularFirestoreCollection 从我的 firestore 中获取对象集合。但是,当我遍历
我有以下代码 服务文件数据链接 private dbUser = '/users'; constructor(private firestore: AngularFirestore) { this.u
我将 Angularfire2 与新的 Firestore 数据库一起使用。在我的方法中,我正在执行这样的查询: const questionsRef = this.afs.collection('q
在我的应用程序中,我有一个需要“或”条件的列表。但是,正如docs say : In this case, you should create a separate query for each OR
我正在尝试根据传递到参数中的 URL 参数从 firestore 集合中获取特定文档,但是因为我已经使用 expensesCollection: AngularFirestoreCollection
我是一名优秀的程序员,十分优秀!