2021/03/14
NuxtJsベースのWebアプリにGoogle Analyticsを導入する
概要
NuxtJSベースで作っているWebアプリにGoogle Analyticsを導入しました。
nuxt-community/google-gtag-moduleを利用させていただきました。
旧来のWebアプリではページを表示する際は都度サーバーにHTMLを要求して、ページのリロードが走るため、都度htmlのheaderやbody下部のscriptが動いたのですが、
NuxtJSのようなsingle page applicationは同様の動作を保証しないため注意が必要です。
基本的には上記のような優秀なpackageを利用させてもらうのが楽で良いかと思います。
実装内容
Google Analyticsコンソールでプロパティの作成
- GAのコンソールにログインして、プロパティを作成します。
- データストリームのメニューでウェブのストリームを追加・作成します。
- できたら測定IDというのが発行されるので、メモしておきます。
GAID=G-XXXXXXXXXX
install @nuxtjs/google-gtag
% yarn add @nuxtjs/google-gtag
nuxt.config.js
nuxt.config.js
に以下を追加しました。
modules: [
// この行を追加
'@nuxtjs/google-gtag',
],
// 以下のプロパティを追加
'google-gtag': {
id: process.env.GAID,
debug: true, // enable to track in dev mode
},
GAIDは事前に.env
に定義しておき、dotenv
パッケージを追加ってnuxt.config.js
の冒頭で読み込ませて使っています。
import dotenv from 'dotenv'
dotenv.config()
データの確認
画面が立ち上がったら、ブラウザの検証モードを開き、のネットワークタブから google-analytics
とか collect
に一致する通信がないか調べます。
うまく動作している場合にはページ遷移毎に通信(ビーコンの発火)が確認できるようになります。
また、Google Analyticsコンソール画面からもリアルタイムに確認することができるようになります。
以上になります。
とても簡単に導入できました。
関連する記事
Nuxt2からNuxt3への移行とNextJSとNuxt3の比較について
弊社ホームページとブログサイトをNuxt2からNuxt3ベースに移行しました。
Nuxt.jsからNext.jsへのリニューアルを経て思うこと
Nuxt.jsからNext.jsへフルリニューアルしたことで見えてきた個人的なメリットとデメリットを整理します
NuxtJSにEditor.jsを導入
リッチでカスタマイズが自由なテキストエディタであるEditor.jsをNuxtJSのサイトに導入しました。
AOSをNuxtJSのサイトに導入する
スクロールアニメーションを簡単に実装できるAOSというライブラリをNuxtJSベースのサイトに導入しました