cdek-it / widget

Базовое решение по интеграции карты выбора ПВЗ от СДЭК
https://widget.cdek.ru
GNU Lesser General Public License v3.0
5 stars 1 forks source link

Несколько раз загружает точки при повторном создании #69

Open piton-zel opened 3 months ago

piton-zel commented 3 months ago

Вот как пример скрипта на котором это можно смоделировать

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Пример работы виджета ПВЗ</title>
    <script src="/local/ext/cdek.widget/cdek-widget.umd.js" type="text/javascript"></script>
    <script type="text/javascript">
        const apiKey = 'XXX';
        const servicePath = '/local/ext/cdek.widget/service.php';
        document.addEventListener('DOMContentLoaded', () => {
            console.info('create 1');
            const obj = new window.CDEKWidget({
                apiKey: apiKey,
                servicePath: servicePath,
                defaultLocation: 'Новосибирск',
            });
            // Ждем 5 сек и удаляем
            setTimeout(() => {
                console.info('destroy 1');
                obj.destroy();
                // Еще ждем 5 сек и опять создаем
                setTimeout(() => {
                    console.info('create 2');
                    const obj2 = new window.CDEKWidget({
                        apiKey: apiKey,
                        servicePath: servicePath,
                        defaultLocation: 'Новосибирск',
                    });
                }, 25000);
            }, 25000);
        });
    </script>
</head>
<body>
<p class="m-2">Пример установки виджета</p>
</body>
</html>

А вот что получаем при создании obj2 изображение Видно что он уже 2 раза это все повторно прогружает? Если еще раз удалить и создать, то .... Я думаю понятно что будет.

Ioprst commented 14 hours ago

А если попробовать создать виджет с новым городом, то грузит точки и с новым городом и со старым

изображение