0

Я работал с AngularJS и его структуры таким образом, что, когда пользователь просматривает вокруг сайта, только мнения и маршруты изменения и есть нет Просматриваемые и т.д. срабатывает (GTM является не загружается по маршруту).Tracking приложение ReactJS

Следовательно, я столкнулся с рядом проблем в аналитике Google (даже Angulartics не слишком перспективен), при работе с веб-сайтами AngularJS.

Сейчас я читаю на ReactJS, и я очень хотел, чтобы использовать его вместе с Laravel. Меня беспокоит только то, что вся виртуальная DOM-концепция React действительно создала бы аналогичную боль в слежении, так как это означало бы, что контейнер менеджера тегов Google может не загружаться каждый раз, когда пользователь приземляется на страницу.

Любой, кто сталкивается с проблемами отслеживания Реагирует на приложения?

ответ

1

Вы монтируете React на данный элемент DOM, который затем становится корневым элементом монтирования. Только эти элементы будут изменены, а это означает, что если у вас есть теги сценария и так, а не внутри реагируют, они не будут затронуты

<html> 
    <head> 
    <script src="/gtm.js"></script> 
    <script src="/react.js"></script> 
    </head> 
    <body> 
    <div id="mount"> 
    </div> 
    <script> 
     class Test extends React.Component { 
     track() { 
      window.dataLayer.push({ 
      event: 'Stuff' 
      }); 
     } 

     render() { 
      return <button onClick={this.track} />; 
     } 
     } 
     React.render(<Test />, document.getElementById('mount')) 
    </script> 
</html> 

В том, что React может изменить только содержимое внутри #mount, и поэтому ГТМ тег должен всегда присутствовать.

+0

Правильно, поэтому gtm.js в этом случае НЕ будет ** загружаться снова ** всякий раз, когда я переключаю страницы (маршруты). Это правильно? – Sina

+0

Да, сэр, это правильно –