【问题标题】:Get current ngrx state without subscribe无需订阅即可获取当前 ngrx 状态
【发布时间】:2017-10-06 20:13:59
【问题描述】:

我想将 Ngrx 用于 OAuth2 服务,我需要在不使用订阅的情况下获取当前的商店状态。

这是我从 localStorage 获取令牌的 OAuth 函数:

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 });
    }
}

在这种情况下是否可以使用 Redux 存储而不是 localStorage?

【问题讨论】:

    标签: javascript angular redux ngrx


    【解决方案1】:

    我真的不明白您为什么要在不订阅的情况下获取状态,因为这是 Ngrx 的核心概念,除非您订阅它,否则您无法从 RxJS 主题中获取值:

    @ngrx/store 的两大支柱 store 和 dispatcher 都扩展了 RxJS 主题。 Subjects 既是 Observables 又是 Observers,意思是 你可以订阅一个主题,但也可以订阅一个主题 资源。在高层次上,主题可以被认为是信使,或者 代理。

    我希望这可以向您解释答案是否定的。不订阅就无法获取当前的 Ngrx 状态!

    【讨论】:

    • Hamed,你能在这个问题上添加一个链接来显示官方引用的出处吗?读者可能会觉得这很有趣且有用。
    猜你喜欢
    • 2020-04-05
    • 2016-09-17
    • 2018-07-23
    • 2014-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多