SAP Spartacus 如何获得当前渲染页面的 CMS 元数据
PageLayoutService 实现里有一个 cms 依赖:CmsService.
当前页面元数据信息,通过 cms.getCurrentPage 维护。
从 routingService 里拿到当前页面上下文,再从 central 的 ngRx store 里抽取实际数据:
routingService.getPageContext 的实现:从 store里读取。
关于 TypeScript 的箭头函数,下列两种写法都正确:
第一种:没有给该函数指定返回类型,TypeScript 编译器自动推导。
let fun5 = (data:number)=> data * data;
第二种:完整写法。第一个箭头后面的 number,表明返回类型为 number.
let fun5:(data:number) =>number = (data:number)=> data * data;
select 接受一个输入参数:RoutingSelector.getNextPageContext,该参数一看就是一个函数:输入类型为 any,输出类型为 PageContext:
getNextPageContext 的类型定义正好和 select 接口里规定的 mapFn 的类型定义完全一致:
(state: any) => PageContext
select<any, PageContext>(mapFn: (state: any) => PageContext): (source$: Observable) => Observable
select 本身的类型定义:返回一个函数,该函数接收的输入参数是类型为 T 的 Observable,输出是类型为 K 的 Observable 对象。
先假设 routingState 已经拿到了,先把 mapper 函数写好。然后再回过头来,解决如何拿到 routingState,即 getRouterState 要解决的问题。
同理:
更多Jerry的原创文章,尽在:“汪子熙”:
SAP Spartacus 如何获得当前渲染页面的 CMS 元数据相关推荐
- Vue是如何渲染页面的,渲染过程以及原理代码
Vue是如何渲染页面的,渲染过程以及原理代码:https://www.cnblogs.com/ypinchina/p/7238402.html 转载于:https://www.cnblogs.com/ ...
- SAP Spartacus 手动开启服务器端渲染 (SSR) 所必须的步骤
使用服务器端渲染,我们可以保证搜索引擎,与浏览器的Javascript禁用,或没有JavaScript的浏览器仍然可以访问我们的网站内容. https://b2bspastore.cg79x9wuu9 ...
- SAP Spartacus开启SSR服务器端渲染之后,和默认客户端渲染的差异比较
客户端渲染(生产模式),首个HTML请求:5.7KB SSR渲染,首个HTML请求:28.7KB 在SSR模式里,服务器返回的HTML,所有的源代码都已经生成完毕: 而CRS生产模式渲染情况下,cx- ...
- 必考面试题:浏览器怎么渲染页面的
在分析浏览器渲染过程之前,我们先了解进程和线程: 什么是进程? 进程是CPU进行资源分配的最小单位 什么是线程? 线程是CPU调度的最小单位,是建立在进程的基础上的运行单位,共享进程的内存空间,通俗点 ...
- 浏览器是如何渲染页面的?
渲染的流程如下: 1.解析HTML文件,创建DOM树. 自上而下,遇到任何样式(link.style)与脚本(script)都会阻塞(外部样式不阻塞后续外部脚本的加载). 2.解析CSS. 优先级:浏 ...
- SAP Spartacus Header区域的渲染逻辑
文件:projects\storefrontlib\src\cms-structure\page\page-layout\page-layout.service.ts 9个一模一样的response: ...
- SAP Spartacus服务器端渲染模式下的调试方法
在使用本文章介绍的步骤进行SAP Spartacus Storefront在服务器端渲染模式(SSR)下的调试之前,请您确保已经按照如下帮助文档的介绍,已经成功启用了服务器端渲染: https://s ...
- SAP Spartacus Customizing CMS Components
Customizing CMS Components Spartacus 店面是基于 JavaScript 的,因此它由大量细粒度的 JavaScript 组件组成. 但是,有一种特殊的组件来呈现 C ...
- SAP Spartacus checkout页面的入口逻辑
checkout url: http://localhost:4200/electronics-spa/en/USD/checkout/shipping-address 首先读取checkout页面的 ...
最新文章
- Matlab数据的可视化 -- 简易表面图
- 刘启成_使用if及变量编写LAMP管理脚本
- 低功耗STM32F411开发板(原理图+PCB源文件+官方例程+驱动等)
- 当代家长现状。。 | 今日最佳
- mysql查询含有某个值的表_MYSQL查询数据表中某个字段包含某个数值
- 利用动态规划(DP)解决 Coin Change 问题
- __main代码分析
- c#读蓝牙数据_C#读取BWT901CL蓝牙传感器的数据
- 剑指offer三从头到尾打印链表
- Ajax的一个体验:Ajax.NET - A free library for the Microsoft .NET Framework
- ubuntu查看进程和结束进程
- idea 2018 破解教程
- linux 网卡爽ip,linux服务器双网卡爽IP实现双线
- 我的世界java无限水_我的世界基岩版:如何获得无限水?这里有5种方法,最后一种无中生有...
- 学习笔记(2):Java面试:核心考点突击大串讲-Redis的持久化机制
- MobaXterm_Portable的快速复制粘贴
- 设计模式 | 中介者模式(详解)
- 随机过程 自相关函数 互相关函数自协方差矩阵 互协方差矩阵的区别联系
- aop - spring如何选择、创建代理bean
- 单片机GPRS模块与web端通信