shipping method 两个备选项,通过类型为 radio 的 input 控件实现:
值发生 change 之后,触发 changeMode 方法的执行:
changeMode 会把执行逻辑交给 checkoutDeliveryService:
这个 service 的类型是一个 abstract class, facade:真正的实现类在 CheckoutDeliveryService:
最后使用 NgRx,dispatch action,将调用投递到 Effect:
Effect 实现里使用 mergeMap,以支持并发请求: