SAP Spartacus的home page navigation逻辑

简介: SAP Spartacus的home page navigation逻辑

我以开发模式启动SAP Spartacus,浏览器里输入url: localhost:4200, 会自动重定向到如下页面:


http://localhost:4201/powertools-spa/en/USD/


image.png

这个action是我们自己自定义的serializer里生成的。


在router.reducer.ts里打印出action明细:


fromNgrxRouter.ROUTER_NAVIGATION


image.png

发现powertools-spa/en/USD对应的semanticRoute是home, 而context字段指向的PageContext,id为__HOMEPAGE__, type为ContentPage:


image.png


其中RouterState类型定义如下:


image.png


当前状态,即初始状态,page context为空。初始状态也定义在router.reducer.ts里:


image.png


运行时的初始状态:


image.png


homepage维护在action payload里。下图已经是从初始状态进入加载context id为__HOMEPAGE__的下一状态了:


image.png


问题:这个包含了home page的action是谁主动发起的呢?


image.png


image.png


答案是这个CustomSerializer:


image.png


semantic route:home,路径为"":


image.png


lookupSemanticRoute:


image.png




image.png

routing-config.service.ts:



image.png



谜底揭开了

image.png

相关文章
|
1月前
|
存储 数据管理 数据处理
SAP CRM 里 Attachment 搜索的实现逻辑介绍
SAP CRM 里 Attachment 搜索的实现逻辑介绍
21 0
|
2月前
|
JavaScript 前端开发 数据库
如何在 SAP CRM 里通过 navigation framework 跳转到 ABAP Webdynpro 页面
如何在 SAP CRM 里通过 navigation framework 跳转到 ABAP Webdynpro 页面
21 0
|
1月前
|
BI 数据库
SAP ABAP ALV 报表单击某列后执行某段 ABAP 逻辑的实现方式 - hotspot 行为实现试读版
SAP ABAP ALV 报表单击某列后执行某段 ABAP 逻辑的实现方式 - hotspot 行为实现试读版
27 0
|
3月前
|
存储 缓存 前端开发
关于 SAP Spartacus Optimization Engine 里的 cache 参数使用注意事项
关于 SAP Spartacus Optimization Engine 里的 cache 参数使用注意事项
20 0
|
3月前
|
JSON 开发者 数据格式
关于 SAP Spartacus LandingPage2Template 区域的 layout 设计实现
关于 SAP Spartacus LandingPage2Template 区域的 layout 设计实现
26 0
|
3月前
|
搜索推荐 开发者 UED
关于 SAP Spartacus 层的 UI 设计
关于 SAP Spartacus 层的 UI 设计
40 0
|
3月前
|
开发者 UED
SAP Spartacus BREAKPOINT 枚举类型在 Spartacus layout 实现中的作用
SAP Spartacus BREAKPOINT 枚举类型在 Spartacus layout 实现中的作用
24 0
|
5月前
|
缓存 自然语言处理 前端开发
Spartacus CSR 渲染模式下的 home page 网络请求
Spartacus CSR 渲染模式下的 home page 网络请求
27 1
|
6月前
|
缓存 索引
SAP ABAP 系统传输请求(Transport Request)导入到其他系统背后执行的逻辑
SAP ABAP 系统传输请求(Transport Request)导入到其他系统背后执行的逻辑
94 0
|
6月前
|
编解码 监控 开发者
关于 SAP UI5 Page Map 里 Flex Enabled 标志位
关于 SAP UI5 Page Map 里 Flex Enabled 标志位
33 0