SAP Spartacus 服务器端渲染的单步调试

简介: SAP Spartacus 服务器端渲染的单步调试

image.png将 req 的 app 属性保存到变量 app 里:image.png在浏览器里访问 localhost:4000,该请求转发给 app.render 函数。image.png这个 merge 操作,把对象 b 的属性,全部赋给对象 a:image.png首先试图从缓存中读取 view 实例:image.png读取 index 视图实例:image.png得到视图构造函数:image.pngimage.png开始渲染:image.png调试模式:image.png调用 Universal Engine 进行渲染:image.pngimage.png下列代码是我们团队同事编写的:image.png在哪里渲染好的呢?image.png入口函数:renderResponseimage.pngimage.pngimage.pngthis.shouldRender 判断是否应该在服务器端渲染:image.png如果当前请求正在渲染,或者已经超过最大渲染并发数,那么就 fallback 到 CSR 渲染模式:

image.png调用钩子函数,得出当前这个请求的渲染策略:image.pngfallback 到 CSR 了:image.pngimage.png在 CSR 模式下,把 index.html 的请求返回给客户端:image.pngself 的指向:image.png我还没在 Visual Studio Code 里 attach nodejs 进程,/ 的 rendering 就结束了 ?!

image.png如果给了一个很大的 timeout 值,就不用担心会 fallback 到 CSR 了:image.pngimage.png此时这个 doc,里面包含的 selector 是空的:image.pngRender an HTML document for a specific URL with specified render options:

image.png上图就是 express-engine.js 的 render 实现函数。

下图:platform-server.js:image.png最终渲染的结果:

image.png

相关文章
|
5月前
|
Web App开发 数据采集 前端开发
纯技术讨论:如何让 SAP UI5 应用无法被别人在浏览器里调试 - 这种做法不推荐试读版
纯技术讨论:如何让 SAP UI5 应用无法被别人在浏览器里调试 - 这种做法不推荐试读版
什么是 SAP ABAP 里的 Subscreen
什么是 SAP ABAP 里的 Subscreen
什么是 SAP ABAP 里的 Subscreen
|
5月前
|
存储 前端开发 Linux
在 SAP ABAP 系统里访问 FTP 服务器
在 SAP ABAP 系统里访问 FTP 服务器
|
5月前
|
XML 网络安全 开发工具
如何下载并安装 SAP ABAPGit,并完成 ABAP 服务器上 SSL 证书的配置试读版
如何下载并安装 SAP ABAPGit,并完成 ABAP 服务器上 SSL 证书的配置试读版
|
5月前
|
存储 Oracle 关系型数据库
服务器数据恢复—RAID5上层SAP+oracle数据恢复案例
**服务器存储数据恢复环境:** 某品牌服务器存储中有一组由6块SAS硬盘组建的RAID5阵列,其中有1块硬盘作为热备盘使用。上层划分若干lun,存放Oracle数据库数据。 **服务器存储故障&分析:** 该RAID5阵列中一块硬盘出现故障离线,热备盘自动激活替换故障硬盘,热备盘同步数据的过程中该raid5阵列中又有一块硬盘出现故障,RAID5阵列瘫痪,上层LUN无法正常访问。 因为本案例中存储控制器的磁盘检查策略严格,一旦某些磁盘性能不稳定,该型号存储控制器就将该块磁盘识别为坏盘,并将该块磁盘踢出RAID。一旦RAID中掉线的盘数到超过RAID级别允许掉盘的最大数量,该RAID将不可用,
服务器数据恢复—RAID5上层SAP+oracle数据恢复案例
|
5月前
|
安全 开发者
如何在 SAP ERP 系统调试 Product Initial Download
如何在 SAP ERP 系统调试 Product Initial Download
|
5月前
|
中间件
如何在 SAP CRM 系统调试 Product Initial Download
如何在 SAP CRM 系统调试 Product Initial Download
|
缓存 负载均衡 前端开发
SAP Spartacus 和 Sticky session 相关的话题
SAP Spartacus 和 Sticky session 相关的话题
SAP Emarsys 和 SAP Spartacus 的集成
SAP Emarsys 和 SAP Spartacus 的集成
|
API 开发者
Google Tag Manager (GTM) 和 Adobe AEPL 在 SAP Spartacus 中的应用
Google Tag Manager (GTM) 和 Adobe AEPL 在 SAP Spartacus 中的应用