- SAP Spartacus的User明细如何通过ngrx-sto
- SAP Spartacus的user id
- SAP 电商云 Spartacus 服务器端渲染的单步调试详细步
- 为什么 SAP 电商云 Spartacus UI SSR 模式下
- 让 fork 出来的 Github 仓库从远端仓库拖取最新的修改
- SAP Spartacus Product 明细页面 meta
- SAP Spartacus Definition of Done
- 借助 SAP 电商云 Spartacus UI 提供的 Sche
- SAP Spartacus的Component映射
- SAP 电商云 Spartacus UI Proxy Facad
tap,select:
![](https://img.haomeiwen.com/i2085791/267226a1ce4c0bb7.png)
![](https://img.haomeiwen.com/i2085791/2b1aec1582c987f4.png)
还是Tapsubscriber,只不过实现在tap.js里:
![](https://img.haomeiwen.com/i2085791/f28dadedfb222971.png)
![](https://img.haomeiwen.com/i2085791/e14c4fb1d395bc76.png)
注意这里有一个重要的操作,输入value为所有state的集合,执行map project,将结果映射成userService感兴趣的userDTO输出:
![](https://img.haomeiwen.com/i2085791/00c59830f4eec20a.png)
映射逻辑和我们应用代码里传入this.store.pipe里的 selector有关:
![](https://img.haomeiwen.com/i2085791/1e7c7ca6bfe3aa13.png)
![](https://img.haomeiwen.com/i2085791/a72c1e47215ee735.png)
这个userState是整个Spartacus state的大杂烩:
![](https://img.haomeiwen.com/i2085791/c2309c1bf7e55377.png)
我们user-details.selector.ts里返回的state.account仅仅是和user相关的:
![](https://img.haomeiwen.com/i2085791/2fc4d23a827ce6b4.png)
我们应用程序自己实现的selector就在这里作为projector被调用:
![](https://img.haomeiwen.com/i2085791/e9d16a7c171f8fbe.png)
更多Jerry的原创文章,尽在:"汪子熙":
![](https://img.haomeiwen.com/i2085791/7cc33388ba14e967.png)
网友评论