SAP 电商云 Spartacus UI Quick Order 延迟加载的现象分析

简介: SAP 电商云 Spartacus UI Quick Order 延迟加载的现象分析

我们用 ng serve 本地启动 SAP Spartacus 时,观察到控制台如下的输出:feature-libs_cart_quick-order_public_api_ts.js


image.png


直接访问如下 url:


http://localhost:4299/electronics-spa/en/USD/


根据关键字 QuickOrder 进行全文搜索,有13个文件包含了 QuickOrder:

image.png

从搜索结果不难看出,访问 SAP Spartacus 首页时,eager load 即正常加载的 Quick Order 相关的内容,全部来自 Root 入口点里的 module,而这些是很轻量级的实现:


image.png


点击 quick order 超链接后:

image.png


触发了一个大小超过 147 KB 的 quick order chunk 的加载:

image.png


总共2092行,

image.png



其中包含了重量级的 QuickOrderService 实现:

image.png


该实现位于需要被延迟加载的 core module 内:


image.png

同样还有所有的 Component 实现:

image.png


这些 Component 实现位于同 core 同级的 Components 文件夹内部,


image.png

位于 QuickOrderModule内部:

image.png


QuickorderModule 包含两部分:


包含 Service 实现的 Core Module

包含 Component 实现的 Component Module

而 QuickOrderModule 整个,作为需要被延迟加载的 Component,定义在 feature Module 内:

image.png



下图的语法,保证了包含 core 和 Components module 在内的 QuickOrderModule,能够被 Angular 框架进行延迟加载。


相关文章
|
7月前
|
缓存 负载均衡 前端开发
SAP Spartacus 和 Sticky session 相关的话题
SAP Spartacus 和 Sticky session 相关的话题
39 0
|
7月前
|
存储
SAP Emarsys 和 SAP Spartacus 的集成
SAP Emarsys 和 SAP Spartacus 的集成
52 0
|
7月前
|
API 开发者
Google Tag Manager (GTM) 和 Adobe AEPL 在 SAP Spartacus 中的应用
Google Tag Manager (GTM) 和 Adobe AEPL 在 SAP Spartacus 中的应用
66 0
|
4月前
|
JSON 开发者 数据格式
关于 SAP Spartacus LandingPage2Template 区域的 layout 设计实现
关于 SAP Spartacus LandingPage2Template 区域的 layout 设计实现
26 0
|
4月前
|
搜索推荐 开发者 UED
关于 SAP Spartacus 层的 UI 设计
关于 SAP Spartacus 层的 UI 设计
42 0
|
4月前
|
开发者 UED
SAP Spartacus BREAKPOINT 枚举类型在 Spartacus layout 实现中的作用
SAP Spartacus BREAKPOINT 枚举类型在 Spartacus layout 实现中的作用
25 0
|
7月前
|
前端开发 搜索推荐 JavaScript
什么是 SAP Spartacus 的 CMS Page Connector
什么是 SAP Spartacus 的 CMS Page Connector
48 0
|
7月前
|
JavaScript 容器
关于 SAP Spartacus generic-link component 的模板代码
关于 SAP Spartacus generic-link component 的模板代码
42 2
|
7月前
|
前端开发 JavaScript API
SAP Commerce Accelerator Storefront 到 Spartacus 的 page by page migration 策略
SAP Commerce Accelerator Storefront 到 Spartacus 的 page by page migration 策略
33 0
|
7月前
|
JSON 前端开发 API
SAP Spartacus UI 中的 CmsTicketInterceptor
SAP Spartacus UI 中的 CmsTicketInterceptor
40 0