React JS + менеджер тегов Google: как вызвать слой данных при переходе на страницу

У меня возникли проблемы при попытке отправить данные в GTM (менеджер тегов Google) в приложении React. Нам уже удалось разместить разные сценарии на соответствующих страницах.

Например, ниже приведен сценарий, который мы поместили на странице корзины:

class Cart extends Component {

  render() {
    const { cartItems } = this.props;
    return (
      <script
        dangerouslySetInnerHTML={{ __html: `
          window.dataLayer = window.dataLayer || [];
          window.dataLayer.push({
            event: 'viewCart',
            cartItems: ${cartItems}
          });
          window.history = window.history || [];
          window.history.pushState({
            page: 'Current Cart Page',
            events: 'viewCart',
            cartItems: ${cartItems},
          }, 'Current Cart Page');
        ` }}
      />
    );
  }
}

Приведенный выше скрипт не будет выполнен, когда мы получим доступ к странице корзины с другой страницы (например, домашняя страница), но когда мы обновим страницу, он будет запущен.

Оказывается, что слой данных только нажал на pageLoad а также DOMReady событие. но не в historyChange

Кто-нибудь сталкивался с этим раньше и знает, как это решить?

0 ответов

Другие вопросы по тегам