本文整理汇总了TypeScript中angularfire2/firestore.AngularFirestoreCollection类的典型用法代码示例。如果您正苦于以下问题:TypeScript AngularFirestoreCollection类的具体用法?TypeScript AngularFirestoreCollection怎么用?TypeScript AngularFirestoreCollection使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了AngularFirestoreCollection类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: _ConnectToFirebase
_ConnectToFirebase() {
let districtCollectionRef: AngularFirestoreCollection<District> = this.mAngularFirestore.collection("districts", ref => {
return ref.where('province_code', '==', this.mProvince.code);
});
this.mDistricts = districtCollectionRef.valueChanges();
}
示例2: newSession
private async newSession(user: firebase.User) {
const ref: AngularFirestoreCollection<any> = await this.af.collection('sessions')
console.log('user', user)
const data = {
name: user.displayName,
date: new Date(),
uid: user.uid
}
return await ref.add(data)
}
示例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: 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;
}
示例5: 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;
}
示例6: addPrestation
addPrestation(item: Prestation): Promise<any> {
const id = this.afs.createId();
const prestation = { id, ...item };
return this.itemsCollection.doc(id).set(prestation).catch((e) => {
console.log(e);
});
}
示例7:
newOrder(order: Order){
this.ordersCollection.add(order)
.then(res =>{
console.log("success order added");
})
.catch(err => {
console.log("error" + err);
})
}
示例8: updatePrestation
updatePrestation(item: Prestation, option?: StatePrestation): Promise<any> {
const presta = {...item};
if (option) {
presta.state = option;
}
return this.itemsCollection.doc(item.id).update(presta).catch((e) => {
console.log(e);
});
}
示例9:
newPayment(payment: Payment){
this.paymentsCollection.add(payment)
.then(res =>{
console.log("success payment added");
})
.catch(err => {
console.log("error" + err);
})
}
示例10: 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;
});
});
}