Мы работаем над внедрением GPT в наш SPA, написанный на VueJS. Всякий раз, когда пользователь переходит на другую страницу, мы вызываем googletag.destroySlots();
для слотов, которые мы хотим удалить, прежде чем элемент DIV будет удален из DOM (хук beforeDestroyed в VueJS удалил google.cmd.push ())
Проблема в том, что в консоли издателя Google появляется следующая ошибка:
googletag.defineSlot was called more times than there are DIVs in the DOM associated with ad slots while in Single Request Mode. This will impact impression counts.
Кроме предупреждения, рекламный слот по-прежнему будет отображаться как наложение и в разделе "Рекламные места"Консоль, закрытие и повторное открытие консоли не работает.
Я попытался воспроизвести ее следующим образом:
- Определите слот с помощью googletag.defineSlot
- загрузить объявление, используя prebid, затем googletag.refresh (показывает нормально)
- Вызов googletag.destroySlots ()
- Удалить элемент DIV, связанный с этим слотом
- ЗапущеноКонсоль Publisher
В этом случае появляется предупреждение, и рекламное место отображается в консоли.
Итак, мой вопрос, должны ли мы игнорировать это предупреждение? Потому что мы правильно вызываем destroySlots, а слот не указан в getSlots ();либо.