【问题标题】:Update checkout sidebar after minicart updateminicart 更新后更新结帐侧边栏
【发布时间】:2021-03-17 13:08:44
【问题描述】:

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

但问题是,当有人更新迷你购物车上的数量时,侧边栏没有刷新,因此那里显示了错误的内容。

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

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

希望有人能帮忙

最好, 皮姆

【问题讨论】:

    标签: magento2


    【解决方案1】:

    在 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...
       }
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-12-18
      • 2021-08-02
      • 2020-10-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-24
      • 1970-01-01
      相关资源
      最近更新 更多