AngularJS

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > AngularJS > Angular Ngrx Store程序状态

Angular Ngrx Store应用程序状态典型示例详解

作者:JerryWang_汪子熙

这篇文章主要为大家介绍了Angular Ngrx Store应用程序状态典型示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

Angular 应用程序需要管理一些应用程序状态

包括服务器端数据、用户信息、用户输入、UI 状态和许多其他变量。 开发人员经常利用可注入服务(Injectable Service)在一个集中的地方提供此功能(包括与一些后端 Web API 的通信),以便应用程序中的其余组件可以访问此共享数据以对其进行处理或更新。

这种做法仅仅适用于小型应用程序。 在某些情况下,随着应用程序规模的增长以及多个组件开始发出调用以更新或读取应用程序状态,这种实现变得不可扩展。 应用程序状态也可能变得不一致或不可靠。

这就是我们为何要引入 Ngrx Store.

应用程序状态是一组数据片段(data slice)的集合

表示应用程序在任何给定时间的状态。如前所述,应用程序状态可以是需要跨应用程序共享的任何数据切片:

典型Application State slice

在 SAP 电商云 Spartacus UI 里,典型的 Application State slice 包括下列一些例子。

以 Site Context 场景为例,定义在 State.ts 文件里:

每一个状态切片都有一个所谓的 top state,称之为 Feature State,通常用一个常量字符串代表:

export interface StateWithSiteContext {
  [SITE_CONTEXT_FEATURE]: SiteContextState;
}

SiteContextState 才是真正包含业务数据的 state 数据结构:

export interface SiteContextState {
  languages: LanguagesState;
  currencies: CurrenciesState;
  baseSite: BaseSiteState;
}

以上就是Angular Ngrx Store应用程序状态典型示例详解的详细内容,更多关于Angular Ngrx Store程序状态的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文