更改组件数组的值后查看不更新

时间:2018-06-12 11:24:01

标签: angular5

我需要更新我的* .component.ts中更改数组的视图 我用

public getFolders() : void {
    this.webService.getFolders({client_id : this.local.get('clientUser').client_id}).subscribe( this.processSkills.bind(this, this.local.get('clientUser')))
}

processSkills(res: any, myobj): void {
    if(res.status){
        myobj.folders = res.folders;
        this.local.set('clientUser', myobj);
        this.userObj = this.local.get('clientUser');
    }
}

它更新我在控制台中看到的数组它更新了我在按F5后看到的会话值,但它没有更新我的视图

最初我将我的数组分配给会话对象的变量。

1 个答案:

答案 0 :(得分:1)

import { BehaviorSubject } from 'rxjs';
private messageSource = new BehaviorSubject(this.local.get('clientUser'));
currentMessage = this.messageSource.asObservable();

我解决了它并找到了一个解决方案,将我们的数组传递给会话,并将代码放入我们的提供程序中,该代码作为我的数组的可观察对象然后接收

  

currentMessage到我们的接收器函数来更新视图。

this.webService.currentMessage.subscribe(message => {
    this.userObj = message;
})

将收到更新后的价值,并会反映在视图上。