1
0
Fork 0
mirror of https://github.com/terribleplan/next.js.git synced 2024-01-19 02:48:18 +00:00
next.js/examples/with-react-ga/pages/_app.js

32 lines
701 B
JavaScript
Raw Normal View History

import React from 'react'
import App, { Container } from 'next/app'
import Router from 'next/router'
import { initGA, logPageView } from '../utils/analytics'
export default class MyApp extends App {
static async getInitialProps ({ Component, router, ctx }) {
let pageProps = {}
if (Component.getInitialProps) {
pageProps = await Component.getInitialProps(ctx)
}
return { pageProps }
}
componentDidMount () {
initGA()
logPageView()
Router.router.events.on('routeChangeComplete', logPageView)
}
render () {
const { Component, pageProps } = this.props
return (
<Container>
<Component {...pageProps} />
</Container>
)
}
}