使用 multiCartService.createCart 后如何设置活动购物车
How to set active cart after using multiCartService.createCart
如何使用 multiCartService.createCart 服务将新创建的购物车设置为活动购物车?
我有这个快速订购场景,当点击添加到购物车按钮时,它会将我的快速订购表中的商品添加到当前购物车中。但是,由于某种原因,当它是新登录的用户时,在加载快速订购页面期间未定义活动购物车,因此我使用了 multiCartService 中的“createCart”方法来创建一个新购物车,这样当我从它将添加到新购物车中的快速订购单。
示例:
this.multiCartService
.createCart({ userId: this.userCurrent })
.pipe(take(1))
.subscribe(
(success) => {
},
(error) => {}
);
但是,在创建购物车并添加商品后,它将转到购物车页面以显示添加的商品,但在 OOTB ActiveCartService.getActive()
上它导致未定义,这意味着没有活动的购物车然后购物车页面是空的。但是,如果您通过浏览器刷新购物车页面,项目将会出现。
我还在使用 Spartacus 1.5 版
请指教。谢谢
您是否尝试调度 SetActiveCartId 事件?哦,这在 1.5 中还不存在。
您需要升级!
我们能够找出缺失的内容。我们只需要使用 extraData 将新创建的购物车设置为 active 为 true。
将此添加到创建购物车
extraData: {active: true}
示例:
this.multiCartService
.createCart({ userId: this.userCurrent, extraData: {
active: true,
}, })
如何使用 multiCartService.createCart 服务将新创建的购物车设置为活动购物车?
我有这个快速订购场景,当点击添加到购物车按钮时,它会将我的快速订购表中的商品添加到当前购物车中。但是,由于某种原因,当它是新登录的用户时,在加载快速订购页面期间未定义活动购物车,因此我使用了 multiCartService 中的“createCart”方法来创建一个新购物车,这样当我从它将添加到新购物车中的快速订购单。
示例:
this.multiCartService
.createCart({ userId: this.userCurrent })
.pipe(take(1))
.subscribe(
(success) => {
},
(error) => {}
);
但是,在创建购物车并添加商品后,它将转到购物车页面以显示添加的商品,但在 OOTB ActiveCartService.getActive()
上它导致未定义,这意味着没有活动的购物车然后购物车页面是空的。但是,如果您通过浏览器刷新购物车页面,项目将会出现。
我还在使用 Spartacus 1.5 版
请指教。谢谢
您是否尝试调度 SetActiveCartId 事件?哦,这在 1.5 中还不存在。
您需要升级!
我们能够找出缺失的内容。我们只需要使用 extraData 将新创建的购物车设置为 active 为 true。
将此添加到创建购物车
extraData: {active: true}
示例:
this.multiCartService
.createCart({ userId: this.userCurrent, extraData: {
active: true,
}, })