我在ionViewWillEnter()方法中调用方法“ allComments()”,但并不是每次进入视图时都不会绑定名称和配置文件。找不到任何有效的原因。代码没有错误
allComments() {
this.comments=[];
let arr=[];
this.com=[];
console.log(this.challengeId)
this.https.get('https://dareost.firebaseio.com/comments/'
+this.challengeId+'.json').map(res=>res.json()).subscribe(x=>{
this.com=x
for(let key in this.com) {
this.comments.push(this.com[key])
}
this.length = this.comments.length;
for(let i=0;i<this.comments.length;i++){
let a=this.comments[i]
console.log(a)
for(let key in a){
arr.push(a[key])
this.arr.push(a[key])
}
}
for(let i=0;i<this.arr.length;i++){
for(let j=0;j<this.users.length;j++){
console.log(this.arr[i].commentedBy)
if(this.arr[i].commentedBy == this.users[j].uid){
console.log(this.users[j].name1)
this.arr[i].name=this.users[j].name1
console.log(this.arr[i])
this.arr[i].profile=this.users[j].profileUrl
}
}
}
有时它不会在控制台上打印this.arr [i] .name,有时会打印出来。
答案 0 :(得分:0)
ionViewWillEnter()获得的时间更少,并且在此期间繁重的循环和繁重的进程无法获得进程。这完全取决于设备的RAM。处理速度快的设备不会加载大量数据,而处理速度慢的设备则可以处理大量数据。