该组件有这项服务:
export class ListUserService {
public openMeet = new BehaviorSubject<boolean>(false);
然后从视图中更改此变量
<span> <input type="button" id="usuarios" name="more" (click)="change()"
value="crear Meet"></span>
在组件中,我具有功能change():
change() {
this.open ? this.open = false : this.open = true;
this.listUserService.openMeet.next(this.open);
});
我想获取其他组件的值
flagPerfil: boolean;
constructor(private listUserService: ListUserService) {
listUserService.openMeet.subscribe((flag) => {
this.flagPerfil = flag;
});
}
但是在视图中值永远不会改变:
<span>{{flagPerfil}}</span>
请不要更改此值,这是什么错误?
答案 0 :(得分:1)
我认为问题出在这行
this.open ? this.open = false : this.open = true;
点击时您没有更改 this.open
,您需要更改如下的 change()
方法
change() {
this.open = this.open ? false : true;
this.listUserService.openMeet.next(this.open);
};
我希望这会有所帮助..:)