【发布时间】:2017-01-13 02:49:47
【问题描述】:
我目前正在开发 Ionic 2 移动应用程序。我有一个使用 AngularFire2 从 Firebase 获得的项目列表。我在列表上实现了重新排序功能。我希望能够将项目的索引存储在列表中并将其发送到我的 Firebase,以便我可以使用索引根据用户的偏好对项目进行优先级排序。有没有办法可以做到这一点?我尝试将“索引”发送到我的 Firebase,但没有成功。
HTML:
<ion-list reorder="true" (ionItemReorder)="reorderItems($event)">
<ion-item *ngFor="let item of categories; let i = index;">
{{i+1}}. {{item.name}}
</ion-item>
</ion-list>
</ion-content>
打字稿:
export class ManageFavouritesPage {
fireAuth: any;
items: any;
categories: any;
categorykey: any;
constructor(public navCtrl: NavController, public af: AngularFire, private toastCtrl: ToastController, public authData: AuthData) {
let userid = this.authData.getID();
this.items = af.database.list(`/users/${userid}/favourites`)
.subscribe(data => this.categories = data)
}
reorderItems(indexes) {
let element = this.categories[indexes.from];
let element2 = this.categories[indexes.to].$key;
this.categories.splice(indexes.from, 1);
this.categories.splice(indexes.to, 0, element);
let userid = this.authData.getID();
this.items = this.af.database.object(`users/${userid}/favourites/${element2}`).update( {priority: indexes.to});
}
}
【问题讨论】:
标签: firebase firebase-realtime-database ionic2 angularfire2