我的应用程序中有一个名为CustomerListComponent
的组件,其中我有一个名为isEligibleForBenefits
的布尔变量,在初始化时默认为false
。
现在,我需要在我的某个服务中调用REST
调用,并且在该调用的成功事件中,我需要将此isEligibleForBenefits
变量设置为true
这里的问题是,从允许的服务中操纵组件的价值?如果是,那怎么能实现呢?
有人可以帮忙吗?
答案 0 :(得分:1)
好的,我会简要回答你:
在您的服务中进行api通话:
import {Subject} from 'rxjs/Subject';
export class yourService {
private messageSubject:Subject<boolean> = new Subject();
public getMessageSubject():Subject<boolean>{
return this.messageSubject:Subject;
}
private callApi(){
http.whatEver.map(() => { this.messageSubject.next(true);})
}
}
在您的组件中:
export class yourComponent{
constructor(private service:yourService){
this.service.getMessageSubject.subscribe((value:boolean) => {
this.isEligibleForBenefits = true; // or = value;
});
}
}