我不确定这是不是正确的想法,但我刚开始使用ngrx进行项目,现在一切都是可观察的 . 当我在组件视图中使用异步管道时,它运行良好,但是当我需要代码中的商店值时,我感到很困惑 . 我当前的方法是创建一个属性并在ngOnInit中订阅选择器,这样我就可以在函数中使用状态的当前值 . 例如,存储配置选项(Web服务地址),然后在服务中使用它 .

@Injectable()
export class HttpService {

    localOptions$ = this.store.pipe(select(fromOptions.selectLocalOptionsState));
    options: fromLocalOptions.State;


    constructor(
        private store: Store<fromOptions.State>,
    ) {
        this.localOptions$.subscribe(localOptions => this.options = localOptions);
    }


    getEntities (fParams): Observable<any> {
        console.log(this.options.webServiceUrl);
    }

}

这感觉很奇怪,所以我的问题是:这是做到这一点的方式,还是我错过了一些东西,但在我读到的任何地方都没有简单的方法来获得“来自可观察的当前 Value ”,我想我已经理解了为什么 .