实现源代码:
getMany(products: ScopedProductData[]): ScopedProductData[] {
console.log('Jerry in getMany: ' + products);
if (!this.adapter.loadMany) {
return products.map((product) => ({
...product,
data$: this.adapter.load(product.code, product.scope),
}));
}
return this.adapter.loadMany(products);
}
![](https://img.haomeiwen.com/i2085791/b47ad413d0e23010.png)
这个requestsOptimizer是个何方神圣:
![](https://img.haomeiwen.com/i2085791/9a0f589efd8753f7.png)
果然最后还是调用Angular的http module,逐一从Commerce Cloud服务器读取数据。没有批量读取的方法。
![](https://img.haomeiwen.com/i2085791/8bd47b6ccc1f13e2.png)
product读取的数据,这些Observable遇到页面上的async pipe之后就会执行真实的HTTP请求。
![](https://img.haomeiwen.com/i2085791/95120e52a2aebed2.png)
更多Jerry的原创文章,尽在:"汪子熙":
![](https://img.haomeiwen.com/i2085791/7cc33388ba14e967.png)
网友评论