迷你购物车更新后更新结帐侧边栏

Update checkout sidebar after minicart update

我有一个用例,我的客户在结账时可以使用顶部的 magento 购物车图标。

然而问题在于,当有人更新小车上的数量时,侧边栏没有刷新,因此那里显示了错误的内容。

我已经尝试扩展此功能并找到了迷你车和扩展它的方法,但我找不到扩展“更新数量”事件的正确方法。

更新后我需要刷新页面。侧边栏应显示其他信息,但结帐步骤本身也取决于购物车本身的内容。所以对于 2 的数量,在特定步骤等上有额外的字段。

希望有人能帮忙

最好的, 皮姆

在 vendor/magento/module-checkout/view/frontend/web/js/sidebar.js 中,_updateItemQtyAfter 方法将触发以下触发器:$(document).trigger('ajax:updateCartItemQty').

$(document).on('ajax:updateItemQty', $.proxy(function () {
    // your stuff here...
}, this));

或者您可以重写和扩展 vendor/magento/module-checkout/view/frontend/web/js/sidebar.js.

中的 _updateItemQtyAfter 方法

边栏中的更​​新按钮将触发 XHR /checkout/sidebar/updateItemQty/,因此如果上述方法不起作用,您可以尝试执行以下操作:

$(document).ajaxComplete(function(event, xhr, settings) {
   if (settings.url.indexOf('checkout/sidebar/updateItemQty') !== -1) {
       // your stuff here...
   }
});