trouve(id:number):boolean{
var bool :boolean =false
this.comapanyService.query().subscribe((resula)=>{
for (let i = 0; i < resula.json.length; i++) {
try {
if( id == resula.json[i].user.id)
{
console.log('id-user:',id ,'user in company:',resula.json[i].user.id,'company :',resula.json[i].id )
bool = true
}
}
catch (error) {}
}
console.log('bool fin pour :',bool)
})
console.log(bool)
if(bool) return true;else return false
}
confirmDelete(login) {
this.userService.find(login).subscribe((response)=>{
const id =response.id
console.log('resulta :', this.trouve(id))
})
}
为什么我总是得到false
?
答案 0 :(得分:0)
因为this.comapanyService.query()是异步操作并且需要一点点。这意味着下面的行总是在结果出现之前执行(当bool值没有改变时):
bool