Domanda

Here is the function in minicart.js

getCartItems: function () {
            var items = this.getCartParam('items') || [];
            console.log(items);
            // want to get product id from items here
            items = items.slice(parseInt(-this.maxItemsToDisplay, 10));
            return items;
        }

Items are showing JSON array in console with all mini cart items data. But I am not able to get only product IDs from that.

Does anyone have any idea for the same?

Thanks!

È stato utile?

Soluzione

You can use undescore each function to get product id from items.

_.each(items, function (item, key) {
    console.log(item.product_id);
}, this);

So you final code looks like:

define([
    'uiComponent',
    'jquery',
    'underscore'
], function (Component, $, _) {

    ...
    ...

    getCartItems: function () {
        var items = this.getCartParam('items') || [];

        _.each(items, function (item, key) {
            console.log(item.product_id);
        }, this);

        items = items.slice(parseInt(-this.maxItemsToDisplay, 10));

        return items;
    },

    ...
    ...
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top