简体   繁体   中英

Get current ngrx state without subscribe

I'd like to use Ngrx for OAuth2 services and I need to get current store state without using subscribe.

This is my OAuth function for getting token from localStorage:

private oAuth2() {
    const token = JSON.parse(localStorage.getItem('oAuthToken'));
    if (token && token.access_token) {
        const headers = new Headers({ 'Authorization': 'Bearer ' + token.access_token });
        return new RequestOptions({ headers: headers });
    }
}

Is it possible to use Redux store instead of localStorage in this case?

I really don't see why you want to get the state without subscribing to it as this is the core concept of Ngrx and you can't get a value from a RxJS Subject unless you subscribe to it:

The two pillars of @ngrx/store, the store and dispatcher, both extend RxJS Subjects. Subjects are both Observables and Observers, meaning you can subscribe to a Subject, but can also subscribe a Subject to a source. At a high-level Subjects can be thought of as messengers, or proxies.

I hope this explains to you that the answer is NO. You can't get current Ngrx state without subscribing to it!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM