ある特定の操作をした人が何人いるのか知りたい。 その操作が行われた時に自分の書いたJavaScriptプログラムから直接Google Analyticsを呼び出してイベントを記録することができる。
この機能はいろいろ凝った使い方ができるが、シンプルに回数をカウントするならこれだけでいい ts
window.gtag("event", "harvest");
window.がなくても動くと思う詳しい話
<script async src="https://www.googletagmanager.com/gtag/js?id=G-GBX75RXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-GBX75RXXXX');
</script>
マニュアルの記述
gtag('event', <action>, {
'event_category': <category>,
'event_label': <label>,
'value': <value>
});
gtag('event', 'screen_view', {
'app_name': 'myAppName',
'screen_name': 'Home'
});
プロパティ追加について
TypeScriptではgtagの型が不明だとエラーになるので下記のように宣言する index.ts
declare global {
interface Window {
gtag: (
a: string,
b: string,
c?: { event_category?: string; event_label?: string; value?: number }
) => unknown;
}
}
イベントの設定をしないといけないのかと混乱したが、しなくていいようだ