Spartacus Loader Meta Reducer - 产品搜索
Spartacus Loader Meta Reducer - Product Search
我正在尝试在 PLP 页面之间加载和导航时加入加载微调器。
我在文档中看到 loaderReducer
促进了这种行为,但我的主要缺点是我无法访问产品减速器。
我可以创建自定义操作,扩展 StateUtils.EntityLoadAction
并在商店中获取加载布尔值,但是使用 product > search
的自定义减速器我失去了减速器:
product > details
product > reviews
product > references
因为我无法访问它们,所以我正在为 PRODUCT_FEATURE = 'product'
更换减速器
Screenshot Product Reducer Spartacus 2.1.x
- 我想要的可以替代的减速器
- 我失去的减速器
有人知道解决方法吗?
斯巴达克斯版本:2.1.x
一般来说,扩展 ngrx reducer 和 state 并不简单,因为它基本上需要创建新的 reducer、state shape、selecors、actions 并在定制的外观中使用它们。
我不会走这条路。
对于您的具体情况,我会考虑仅通过观察 ProductSearchActions 来公开加载标志,例如 SearchProducts、SearchProductsSuccess、SearchProductsFail。它看起来更简单,应该可以为您提供完全相同的信息,而无需扩展商店的开销。
我正在尝试在 PLP 页面之间加载和导航时加入加载微调器。
我在文档中看到 loaderReducer
促进了这种行为,但我的主要缺点是我无法访问产品减速器。
我可以创建自定义操作,扩展 StateUtils.EntityLoadAction
并在商店中获取加载布尔值,但是使用 product > search
的自定义减速器我失去了减速器:
product > details
product > reviews
product > references
因为我无法访问它们,所以我正在为 PRODUCT_FEATURE = 'product'
Screenshot Product Reducer Spartacus 2.1.x
- 我想要的可以替代的减速器
- 我失去的减速器
有人知道解决方法吗?
斯巴达克斯版本:2.1.x
一般来说,扩展 ngrx reducer 和 state 并不简单,因为它基本上需要创建新的 reducer、state shape、selecors、actions 并在定制的外观中使用它们。 我不会走这条路。
对于您的具体情况,我会考虑仅通过观察 ProductSearchActions 来公开加载标志,例如 SearchProducts、SearchProductsSuccess、SearchProductsFail。它看起来更简单,应该可以为您提供完全相同的信息,而无需扩展商店的开销。