我的NGRX状态是这样的
state.data 状态数据已存档
我想将数据从www.example.com复制store.data到state.dataArchived。
selectedSchedulingsOnPopup$ = this.store.pipe(select(selectSchedulingsByBranch));
ngOnInit() {
this.store.dispatch(new GetDirectionsOnGraph({}));
this.selectedSchedulingsOnPopup$.subscribe(value => {
this.selectedSchedulingsOnPopupValue = value;
this.store.dispatch(new GetDirectionsOnGraph(this.selectedSchedulingsOnPopupValue));
});
}
问题是当state.data
改变时,state.dataArchived
也改变
因此,我想在不订阅state.data
的情况下获取它的当前值。
2条答案
按热度按时间bpsygsoo1#
我不明白这个问题,但是如果你想在不订阅的情况下获得价值,你可以把它转换成一个承诺。
请记住,在这种承诺的方式,它只会React一次,并获得数据,并继续下去。如果你想被告知的数据切片的变化,你必须订阅它,没有其他办法。
toPromise现在标记为已弃用。您可以使用lastValueFrom将observable转换为promise,如下所示。
h7appiyu2#
如果您只想要第一个值,然后忽略所有后续变更,请使用first()运算子: