Package Exports
- react-ga4
- react-ga4/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (react-ga4) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
React Google Analytics 4
Migrate from old react-ga
// Simply replace `react-ga` with `react-ga4` and remove `ReactGA.pageview()`
// import ReactGA from "react-ga";
import ReactGA from "react-ga4";Install
npm i react-ga4Usage
import ReactGA from "react-ga4";
ReactGA.initialize("your GA measurement id");Example
More example can be found in test suite
// Multiple products (previously known as trackers)
ReactGA.initialize([
{
trackingId: "your GA measurement id",
gaOptions: {...}, // optional
gtagOptions: {...}, // optional
},
{
trackingId: "your second GA measurement id",
},
]);
// Send pageview with a custom path
ReactGA.send({ hitType: "pageview", page: "/my-path", title: "Custom Title" });
// Send a custom event
ReactGA.event({
category: "your category",
action: "your action",
label: "your label", // optional
value: 99, // optional, must be a number
nonInteraction: true, // optional, true/false
transport: "xhr", // optional, beacon/xhr/image
});Reference
ReactGA.initialize(GA_MEASUREMENT_ID, options)
| Parameter | Notes |
|---|---|
| GA_MEASUREMENT_ID | string Required |
| options.nonce | string Optional Used for Content Security Policy (CSP) more |
| options.testMode | boolean Default false |
| options.gtagUrl | string Default https://www.googletagmanager.com/gtag/js |
| options.gaOptions | object Optional Reference |
| options.gtagOptions | object Optional |
ReactGA.set(fieldsObject)
| Parameter | Notes |
|---|---|
| fieldsObject | object Required |
ReactGA.event(name, params)
This method signature are NOT for UA-XXX
| Parameter | Notes |
|---|---|
| name | string Required A recommended event or a custom event |
| params | object Optional |
ReactGA.event(options)
| Parameter | Notes |
|---|---|
| options | object Required |
| options.action | string Required |
| options.category | string Required |
| options.label | string Optional |
| options.value | number Optional |
| options.nonInteraction | boolean Optional |
| options.transport | 'beacon'|'xhr'|'image' Optional |
ReactGA.send(fieldsObject)
| Parameter | Notes |
|---|---|
| fieldsObject | object Required |
ReactGA.gtag(...args)
ReactGA.ga(...args)
Extending
import { ReactGAImplementation } from "react-ga4";
class MyCustomOverriddenClass extends ReactGAImplementation {}
export default new MyCustomOverriddenClass();Debugging
Use Google Analytics Debugger Chrome Extension to see logs
Maintainer
License
MIT