Как добавить gtag.js в реагировать.js/next.js index.js?

Я прошу прощения за этот вопрос noob, я просто начинаю использовать шаблон шаблона next.js https://github.com/zeit/next.js/tree/canary/examples/hello-world/pages Обычно я просто добавляю gtag.js to index.html, но для этого next.js есть только index.js. Вопрос в том, как я могу это включить? Я пытался сделать gtag как компонент и попытаться импортировать его, а также включить скрипт, так как он находится внутри функции рендеринга index.js, но пока он не работает! Помогите мне, пожалуйста!

GTAG:

 <script async src="https://www.googletagmanager.com/gtag/js? 
   id=GA_TRACKING_ID"></script>
    <script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'GA_TRACKING_ID');
</script>

index.js:

import Link from 'next/link'
export default () => (
  <div>Hello World. <Link href='/about'><a>About</a></Link></div>
)

1 ответ

Вы можете добавить функцию gtag как lib следующим образом:

export const GA_TRACKING_ID = '<YOUR_GA_TRACKING_ID>'

// https://developers.google.com/analytics/devguides/collection/gtagjs/pages
export const pageview = url => {
  window.gtag('config', GA_TRACKING_ID, {
    page_location: url
  })
}

// https://developers.google.com/analytics/devguides/collection/gtagjs/events
export const event = ({ action, category, label, value }) => {
  window.gtag('event', action, {
    event_category: category,
    event_label: label,
    value: value
  })
}

Полный пример того, как добавить Google Analytics в NextJS, вы можете посмотреть здесь

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