Как исправить ошибку Possible BX.Event.EventEmitter memory leak detected?

Сайт на битриксе в визуальным редактором intec. На странице каталога не работает кнопка добавления в корзину, но на странице товара она работает. Обрбаотчик клика на странице товара и категорий одинаковый. На странице категории в отличии от страницы товара в консоли есть ошибка Possible BX.Event.EventEmitter memory leak detected. 60 "ontoppanelcollapse" listeners added. Use emitter.setMaxListeners() to increase limit. плюс аналогичные ошибки для событий ondynamicmodechange, onmenuopenermoved, onmenuopenerunhide так что я решил что дело в них. Добавил перед обработчиком события клика на кнопку добавления в корзину BX.Event.EventEmitter.setMaxListeners(100), но ошибки не пропали Обработчик клика на кнопку

    template.load(function () {
        var app = this;
        var _ = app.getLibrary('_');
        var $ = app.getLibrary('$');

        var data;
        var refresh;
        var update;

        data = {};
        data.basket = [];
        data.compare = [];

        refresh = function () {
            $('[data-basket-id]').attr('data-basket-state', 'none');
            $('[data-compare-id]').attr('data-compare-state', 'none');

            _.each(data.basket, function (item) {
                $('[data-basket-id=' + item.id + ']').attr('data-basket-state', item.delay ? 'delayed' : 'added');
            });

            _.each(data.compare, function (item) {
                $('[data-compare-id=' + item.id + ']').attr('data-compare-state', 'added');
            });
        };

        update = function () {
            $.ajax(<?= JavaScript::toObject($arResult['ACTION']) ?>, {
                'type': 'POST',
                'cache': false,
                'dataType': 'json',
                'data': <?= JavaScript::toObject($arParams) ?>,
                'success': function (response) {
                    data = response;
                    refresh();
                }
            });
        };
        BX.Event.EventEmitter.setMaxListeners(100)
      //клик по кнопке добавления в корзину
        $(document).on('click', '[data-basket-id][data-basket-action]', function () {
            var node = $(this);
            var id = node.data('basketId');
            var action = node.data('basketAction');
            var quantity = node.data('basketQuantity');
            var price = node.data('basketPrice');
            var data = node.data('basketData');

            if (id == null)
                return;

            if (action === 'add') {
                $('[data-basket-id=' + id + ']').attr('data-basket-state', 'processing');

                app.api.basket.add(_.merge({
                    'quantity': quantity,
                    'price': price
                }, data, {
                    'id': id
                })).run();
            } else if (action === 'remove') {
                $('[data-basket-id=' + id + ']').attr('data-basket-state', 'processing');

                app.api.basket.remove(_.merge({}, data, {
                    'id': id
                })).run();
            } else if (action === 'delay') {
                $('[data-basket-id=' + id + ']').attr('data-basket-state', 'processing');

                app.api.basket.add(_.merge({
                    'quantity': quantity,
                    'price': price
                }, data, {
                    'id': id,
                    'delay': 'Y'
                })).run();
            } else if (action === 'setQuantity') {
                $('[data-basket-id=' + id + ']').attr('data-basket-state', 'processing');

                app.api.basket.setQuantity(_.merge({
                    'quantity': quantity,
                    'price': price
                }, data, {
                    'id': id,
                    'delay': 'Y'
                })).run();
            }
        }).on('click', '[data-compare-id][data-compare-action]', function () {
            var node = $(this);
            var id = node.data('compareId');
            var action = node.data('compareAction');
            var code = node.data('compareCode');
            var iblock = node.data('compareIblock');
            var data = node.attr('compareData');

            if (id == null)
                return;

            if (action === 'add') {
                $('[data-compare-id=' + id + ']').attr('data-compare-state', 'processing');

                app.api.compare.add(_.merge({}, data, {
                    'id': id,
                    'code': code,
                    'iblock': iblock
                })).run();
            } else if (action === 'remove') {
                $('[data-compare-id=' + id + ']').attr('data-compare-state', 'processing');

                app.api.compare.remove(_.merge({}, data, {
                    'id': id,
                    'code': code,
                    'iblock': iblock
                })).run();
            }
        });

        app.api.basket.on('update', update);
        app.api.compare.on('update', update);

        update();
    }, {
        'name': '[Component] intec.universe:system (basket.manager)',
        'loader': {
            'options': {
                'await': [
                    'composite'
                ]
            }
        }
    });


Ответы (0 шт):