- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要按降序从 Firebase 获取数据。
当组件第一次加载时,一切正常。
fetchData(){
return this.af.list('/path/path/',{
query: {
orderByChild: 'createdAt'
}
}).map(arr => {return arr.reverse();});
}
获取广告的数据存储在 var 中,然后显示。
但现在的问题是 var 在运行时被修改,用户可以更新 var 数组,或者删除或添加它。
每当发生这些操作时,Firebase 数据库上的数据就会被修改,并再次调用获取数据。
但随后又发生了相反的情况,使得整个东西使用更少。
我的意思是在第一个组件加载之后,var 是 1,2,3,4。但是当我们添加到 var 而不是变成 1,2,3,4,5 时,它变成了 5,4,3,2,1。
这非常令人困惑,但我尝试了很多但无法解决这个问题。
更新
ngOnInit() {
this.display = this.route.snapshot.data['Auth'];
if(this.display){
this.showProgress = true;
this.user = JSON.parse(localStorage.getItem("user"));
this.service.fetchData().subscribe((data) => {
this.comments = data;
this.showProgress = false;
});
} else {
this.afAuth.authState.subscribe((data) => {
if (data) {
localStorage.setItem("user", JSON.stringify(data));
this.user = data;
this.service.fetchData().subscribe((res) => {
this.comments = res;
this.showProgress = false;
});
} else {
this.comments = null;
}
});
这就是运行时发生的情况,其余所有都是 angular2firebase 的 CRUD 函数,当我们添加更新或删除时发生
我尝试使用管道进行相同的操作,但在获取索引时会导致问题,因此我放弃了该计划,因为它变得太复杂了
add(){
this.service.postComment(this.comment, this.user);
}
editComment(key:string,updatedComment:any){
const index = ((this.page-1)*5)+i;
const updated = this.comments[index];
updated.comment = comment;
this.service.editComment(updated.$key,updated);
}
deleteComment(key:String){
this.service.deleteComment(this.comments[index].$key);
}
最佳答案
我相信您这里有一个拼写错误:
editComment(key:string,updatedComment:any){
this.service.editComment(updatedComment.$key, updatedComment); // I changed `updated` to `updatedComment`
}
您可以做的另一件事是遵循反向自定义管道方法,当您这样做时,删除 reverse()
来自您的map()
在fetchData()
.
反向管道:
import {Pipe} from 'angular2/core';
@Pipe({
name: 'reverse',
pure: false
})
export class ReversePipe {
transform (values) {
if (values) {
return values.reverse();
}
}
}
更新:
尝试将映射和反转的响应声明为 FirebaseListObservable<any[]>
.
fetchData(){
return this.af.list('/path/path/',{
query: {
orderByChild: 'createdAt'
}
}).map((array) => array.reverse()) as FirebaseListObservable<any[]>;
}
关于javascript - 按降序从 Firebase 获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45185026/
序 大家好呀,我是summo,这次来写写我在上班空闲(摸鱼)的时候做的一个小网站的事。去年阿里云不是推出了个活动嘛,2核2G的云服务器一年只要99块钱,懂行的人应该知道这个价格在业界已经是非常良心了
我尝试根据给定的级别顺序(BFS 顺序)构造 BST。我知道这是可能的,但我不知道我该怎么写。问题是我必须使用 BFS 序列。所以,我不能在这里使用递归,我必须迭代地编写我的程序......我发现这有
我是一名优秀的程序员,十分优秀!