本文整理汇总了TypeScript中angularfire2/firestore.AngularFirestoreCollection.snapshotChanges方法的典型用法代码示例。如果您正苦于以下问题:TypeScript AngularFirestoreCollection.snapshotChanges方法的具体用法?TypeScript AngularFirestoreCollection.snapshotChanges怎么用?TypeScript AngularFirestoreCollection.snapshotChanges使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类angularfire2/firestore.AngularFirestoreCollection
的用法示例。
在下文中一共展示了AngularFirestoreCollection.snapshotChanges方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: getPaymentsInRange
getPaymentsInRange(email: string, isAdmin: boolean, fromDate: Date, toDate:Date): Observable < Payment[] > {
var newFromDate = new Date(fromDate);
var newToDate = new Date(toDate);
newFromDate.setHours(0,0,0,0);
newToDate.setDate(toDate.getDate()+1);
newToDate.setHours(0,0,0,0);
if(isAdmin){
this.paymentsCollection = this.afs.collection('payments', ref =>
ref.orderBy("date", "desc").
where('date', ">", newFromDate).
where('date', "<", newToDate));
}
else{
this.paymentsCollection = this.afs.collection('payments', ref =>
ref.orderBy("date", "desc").
where("customerEmail", "==", email).
where('date', ">", newFromDate).
where('date', "<", newToDate));
}
this.payments = this.paymentsCollection.snapshotChanges().map(changes => {
return changes.map(action => {
const data = action.payload.doc.data() as Payment;
data.id = action.payload.doc.id;
return data;
});
});
return this.payments;
}
示例2: search
search(filters, lastItem = null): Observable<Comment[]> {
this.itemsCollection = this.af.collection<Comment>('comments',
ref => {
let query: Query = ref;
query = query.where('isPublished', '==', filters.isPublished);
query = query.where('channel', '==', filters.channel);
query = query.where('domain', '==', filters.domain);
query = query.orderBy('published', 'desc');
if (lastItem) {
query = query.startAfter(lastItem.doc);
}
query = query.limit(20);
return query;
}
);
this.items = this.itemsCollection.snapshotChanges().map(actions => {
return actions.map(a => {
const data = a.payload.doc.data() as Comment;
const id = a.payload.doc.id;
const doc = a.payload.doc;
return { id, ...data, doc};
});
});
return this.items;
}
示例3: getTodayPayments
getTodayPayments(email: string, isAdmin: boolean): Observable < Payment[] > {
let today = new Date();
today.setHours(0,0,0,0);
if(isAdmin){
this.paymentsCollection = this.afs.collection('payments', ref =>
ref.orderBy("timeReceived", "desc").
where('timeReceived', ">", today));
}
else{
this.paymentsCollection = this.afs.collection('payments', ref =>
ref.orderBy("timeReceived", "desc").
where("customerEmail", "==", email).
where('timeReceived', ">", today));
}
this.payments = this.paymentsCollection.snapshotChanges().map(changes => {
return changes.map(action => {
const data = action.payload.doc.data() as Payment;
data.id = action.payload.doc.id;
return data;
});
});
return this.payments;
}
示例4: getPorciones
getPorciones(): Observable<InventoryItem[]>{
this.porciones = this.porcionesCollection.snapshotChanges().map(changes => {
return changes.map(action => {
const data = action.payload.doc.data() as InventoryItem;
data.id = action.payload.doc.id;
return data;
});
});
return this.porciones;
}
示例5: getCompletos
getCompletos(): Observable<Completo[]>{
this.completos = this.completosCollection.snapshotChanges().map(changes => {
return changes.map(action => {
const data = action.payload.doc.data() as Completo;
data.id = action.payload.doc.id;
return data;
});
});
return this.completos;
}
示例6: constructor
constructor(public af: AngularFirestore) {
this.sesssionRef = af.collection('sessions', ref => ref.orderBy('date', 'desc').limit(100))
this.sessions = this.sesssionRef.snapshotChanges().pipe(
map(actions => actions.map(a => {
const data = a.payload.doc.data();
const id = a.payload.doc.id;
return { id, ...data };
}))
);
}
示例7: getHouses
getHouses() {
// constructor에서 선언되어 있으면 라우트 변경시 로딩이 안되는 버그가 생긴다.
return this.house = this.housesCollection.snapshotChanges().map( changes => {
return changes.map( a => {
const data = a.payload.doc.data() as House;
data.id = a.payload.doc.id;
return data;
});
});
}
示例8: ngOnInit
ngOnInit(){
this.postsCol = this.afs.collection('posts', ref => ref.where('title','==', 'My First Post'));
this.posts = this.postsCol.snapshotChanges()
.map(actions => {
return actions.map(a => {
const data = a.payload.doc.data() as Post;
const id = a.payload.doc.id;
return { id, data };
});
});
}
示例9: getCustomers
getCustomers(): Observable<Customer[]>{
this.customers = this.customersCollection.snapshotChanges().map(changes => {
return changes.map(action => {
const data = action.payload.doc.data() as Customer;
data.id = action.payload.doc.id;
return data;
});
});
return this.customers;
}
示例10: getClients
getClients(): Observable<Client[]>{
this.clients = this.clientsCollection.snapshotChanges().map(changes => {
return changes.map(action => {
const data = action.payload.doc.data() as Client;
data.id = action.payload.doc.id;
return data;
});
});
return this.clients;
}