SAP 电商云 Spartacus UI 的 proxy facade 是如何调用实际实现类

下列代码第 126 行,通过来自 Angular/core 的 Injector,手动注入一个 QuickOrderFacade 的实例:

SAP 电商云 Spartacus UI 的 proxy facade 是如何调用实际实现类

调用这个 facade 的 get 方法,在执行实际被代理类的业务逻辑之前,需要先延迟加载包含该业务类实现的 core module:

SAP 电商云 Spartacus UI 的 proxy facade 是如何调用实际实现类

只有当类型为 Observable 的方法才会被处理:

SAP 电商云 Spartacus UI 的 proxy facade 是如何调用实际实现类

这里我们调用 Rxjs 标准的 ConnectableObservable 的 connect 方法,触发第 73 行 pipe 传递进去的 Operator 的执行:

SAP 电商云 Spartacus UI 的 proxy facade 是如何调用实际实现类

这里就开始调用具体的实现类 QuickOrderService 的 getEntries 方法了:

SAP 电商云 Spartacus UI 的 proxy facade 是如何调用实际实现类

更多Jerry的原创文章,尽在:"汪子熙":
SAP 电商云 Spartacus UI 的 proxy facade 是如何调用实际实现类

上一篇:Es7.x使用RestHighLevelClient进行增删改和批量操作


下一篇:门面类(外观)模式(facade)