Comment mettre à jour les tarifs d'expédition à l'aide d'Ajax lorsque l'article du panier est supprimé sur la page Commander-Panier?

15

Mes tarifs d'expédition sont calculés sur la base de l'article présent dans le panier et maintenant lors de la suppression de l'article sur la Checkout/Cartpage, je dois mettre à jour les tarifs d'expédition. À partir de maintenant, Supprimer l'élément sur la Checkout/Cartpage met à jour la section totale mais ne rafraîchit pas les tarifs d'expédition. Il serait très utile que quelqu'un puisse me guider sur la façon de déclencher l'obtention des tarifs d'expédition une fois que l'article est supprimé du panier à l'aide d'Ajax.

Rizwan Dhuka
la source
avez-vous trouvé une solution à cela?
Deeps

Réponses:

1

J'espère que tu vas bien.

Veuillez essayer avec ce code JavaScript, j'espère que cela vous aidera.

define(
    [
        'Magento_Checkout/js/model/quote',
        'Magento_Checkout/js/model/shipping-rate-processor/new-address',
        'Magento_Checkout/js/model/shipping-rate-processor/customer-address',
        'Magento_Checkout/js/model/shipping-rate-registry'

    ],
    function (quote, defaultProcessor, customerAddressProcessor, rateRegistry) {
       'use strict';

       var processors = [];

       rateRegistry.set(quote.shippingAddress().getCacheKey(), null);

       processors.default =  defaultProcessor;
       processors['customer-address'] = customerAddressProcessor;

       var type = quote.shippingAddress().getType();

       if (processors[type]) {
          processors[type].getRates(quote.shippingAddress());
       } else {
          processors.default.getRates(quote.shippingAddress());
       }

    }
);
Bhavin Gehlot
la source
0
 requirejs([
    'Magento_Checkout/js/model/quote',
    'Magento_Checkout/js/model/shipping-rate-registry'
], function(quote, rateRegistry){


    var address = quote.shippingAddress();

    address.trigger_reload = new Date().getTime();

    rateRegistry.set(address.getKey(), null);
    rateRegistry.set(address.getCacheKey(), null);

    quote.shippingAddress(address);
});
Urvashi Prajapati
la source