избыточный маяк: расширенные действия электронной коммерции не запускаются - PullRequest
0 голосов
/ 01 июля 2018

Я использую redux-beacon для управления расширенными действиями электронной торговли Google Analytics. Что я заметил, так это то, что события просмотра страниц запускаются нормально, но расширенные действия электронной коммерции не отправляются. Как будто они хранятся в уровне данных, но сетевой запрос не запускается. Я новичок в улучшенном отслеживании электронной торговли, так что, возможно, я что-то упустил?

Например, здесь у меня есть события, которые запускаются при просмотре товара:

export const analyticsEcommerceProduct = trackEcommProduct((action) => {
  const { product } = action;
  return {
    id: product.id,
    name: product.title,
    category: product.type
  };
}, CLIENT_TAG);

export const analyticsEcommerceAction = trackEcommAction((action) => {
  const { actionType, id, revenue } = action;
  return {
    actionName: actionType,
    id,
    revenue
  };
}, CLIENT_TAG);

которые добавляются к моим eventMap:

const eventsMap = {
  CLIENT_ANALYTICS_PAGEVIEW: clientPageView,
  CLIENT_ANALYTICS_ECOMM_PRODUCT: analyticsEcommerceProduct,
  CLIENT_ANALYTICS_ECOMM_ACTION: analyticsEcommerceAction
};

const middleware = createMiddleware(eventsMap, GoogleAnalytics(), GoogleTagManager());

Теперь, когда я попадаю на страницу продукта, события analyticsEcommerceProduct и analyticsEcommerceAction запускаются, как и ожидалось, но сетевой запрос на отправку этой информации не делается:

enter image description here

Есть ли какое-либо событие для «отправки» данных, которые мне нужно добавить?

1 Ответ

0 голосов
/ 02 июля 2018

Есть ли какое-либо событие для «отправки» данных, которые мне нужно добавить?

Да, я верю в это. Читая примеры, которые Google предоставляет здесь: https://developers.google.com/analytics/devguides/collection/analyticsjs/enhanced-ecommerce,, похоже, что действия электронной коммерции устанавливают метаданные, которые будут отправлены вместе со следующим событием или просмотром страницы. Каждый пример заканчивается либо ga('send', 'pageview');, либо вызовом события, например:

ga('send', 'event', 'Checkout', 'Option', {
     hitCallback: function() {
       // Advance to next page.
     }
  });

Я бы попробовал перейти на новую страницу и проверить сделанный там звонок, чтобы узнать, содержит ли он нужные вам данные. Если это произойдет, я подумаю о том, как сделать это проще для пользователей избыточных маяков. По крайней мере, я думаю, что некоторые документы / советы в порядке. Как всегда, я открыт для предложений / пр.

...