narkq / react-yandex-metrika

React component for Yandex.Metrika
128 stars 25 forks source link

настройка дополнительных параметров #20

Open romanown opened 6 years ago

romanown commented 6 years ago

как настроить? Отслеживание хеша в адресной строке браузера Асинхронный код В одну строку Информер

narkq commented 6 years ago

Отслеживание хеша в адресной строке браузера

Написал в этом комментарии https://github.com/narkq/react-yandex-metrika/issues/18#issuecomment-402279005

Асинхронный код

Что это значит? Способ загрузки скрипта метрики? Он и так асинхронный.

В одну строку

Что это значит?

Информер

Отдельным компонентом. Присылайте пулл-реквесты :)

romanown commented 6 years ago

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

narkq commented 6 years ago

Параметры инициализации счётчика можно найти в документации https://yandex.ru/support/metrika/code/counter-initialize.xml

Если я правильно понимаю, вам нужно указать <YMInitializer accounts={[123]} options={{trackHash: true}} />

Однако, я не уверен, что имеет смысл включать и отслеживание хеша, и отправку хитов при навигации через клиентский роутер.

romanown commented 6 years ago

спасибо, попробую. без хэша он утм метки не показывает. параметры то известны, а как их использовать не догадался сам.

romanown commented 6 years ago

не помогло. не показывает утм метки. а когда был стандартный код от яндекса, показывало. но я его удалил и поставил Ваш компонент.

narkq commented 6 years ago

А что вы передаёте в ym.hit?

On Fri, Jul 6, 2018, 12:46 romanown notifications@github.com wrote:

не помогло. не показывает утм метки. а когда был стандартный код от яндекса, показывало. но я его удалил и поставил Ваш компонент.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/narkq/react-yandex-metrika/issues/20#issuecomment-402985772, or mute the thread https://github.com/notifications/unsubscribe-auth/AArEcoOCope76Cc80Y7s0b8mWrnfOz2aks5uDzILgaJpZM4VFE3E .

narkq commented 6 years ago

И включен ли у вас defer: true?

On Fri, Jul 6, 2018, 12:58 Alex Sladkov sladkov@gmail.com wrote:

А что вы передаёте в ym.hit?

On Fri, Jul 6, 2018, 12:46 romanown notifications@github.com wrote:

не помогло. не показывает утм метки. а когда был стандартный код от яндекса, показывало. но я его удалил и поставил Ваш компонент.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/narkq/react-yandex-metrika/issues/20#issuecomment-402985772, or mute the thread https://github.com/notifications/unsubscribe-auth/AArEcoOCope76Cc80Y7s0b8mWrnfOz2aks5uDzILgaJpZM4VFE3E .

romanown commented 6 years ago

все так же как и ранее описывал. `const HistoryListener = withRouter(class extends React.Component {

  componentWillReceiveProps(nextProps) {
  const currentPage = this.props.location.pathname;
  const nextPage = nextProps.location.pathname;

  if (currentPage !== nextPage) {
  ym('hit', nextPage);  
  }
}

render() { } }) export default withRouter(props => { return (

<YMInitializer accounts={[49433788]} options={{trackHash: true}}/>
<HistoryListener />
  <Switch>

как-то код странно вставляется
narkq commented 6 years ago

Так pathname не содержит же query string. Вам просто нужно url целиком передать. trackHash ни при чем вообще, мне кажется.

romanown commented 6 years ago

такой код в компоненте по гуглу и Вы мне его в пример использования ставили.

narkq commented 6 years ago

такой код в компоненте по гуглу

Значит там utm-метки тоже не передаются, что ж поделать :)

Вы мне его в пример использования ставили.

Если посмотрите внимательнее, то можете увидеть, что я в комментарии писал немного другой код. https://github.com/narkq/react-yandex-metrika/issues/18#issuecomment-402279005

romanown commented 6 years ago

так у меня вообще ничего не работало. после долгих экспериментов единственно хоть как-то рабочий вариант тот который сейчас есть и который я показал.