SAP Spartacus B2B User list页面的数据加载逻辑
发布日期:2021-06-30 14:44:59 浏览次数:2 分类:技术文章

本文共 594 字,大约阅读时间需要 1 分钟。

list.service.ts的getData方法里的this.load触发时,this实际指向UserListService:

触发点还是list页面的async pipe:

ListService在运行时的实例化成UserListService,在userCmsConfig里完成:

getUserList:调用this.store.select:

getUserList的实现:

这里才执行createSelector?

createSelector的返回结果:

返回一个Observable对象:

select的输入参数:输入一个函数,该函数的类型定义:

接受一个输入参数,类型为T,输出参数为K,整个select调用返回的类型为:Observable:

问题来了:this.store.select输入的,到底是selector,还是纯函数projection?

从接口看,是一个selector:

这里开始加载list:

先take,再map:

注意,这里返回的是string,而不是Observable:

准备加载B2BUsers,参数为userId和params:

这个return语句会触发reducer的状态迁移:

这个payload里怎么只有一条数据?

似乎是在一个循环里被反复触发:

确实是在循环里:高阶reducer

更多Jerry的原创文章,尽在:“汪子熙”:

转载地址:https://jerry.blog.csdn.net/article/details/114492330 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:SAP Spartacus 和Jerry Sandbox应用Store引用的source字段类型差异
下一篇:SAP Spartacus B2B user列表对应的Angular Component

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年04月16日 18时05分47秒