rsnext/test/integration/client-navigation/pages/nav/on-click.js
Joe Haddad 18a9c7e371
Improve linting rules to catch more errors (#9374)
* Update `packages/`

* Update examples

* Update tests

* Update bench

* Update top level files

* Fix build

* trigger
2019-11-10 19:24:53 -08:00

42 lines
1.1 KiB
JavaScript

import { Component } from 'react'
import Link from 'next/link'
export default class OnClick extends Component {
static getInitialProps({ res, query: { count } }) {
return { count: count ? parseInt(count) : 0 }
}
state = {
stateCounter: 0,
}
render() {
const { stateCounter } = this.state
const { count } = this.props
return (
<div id="on-click-page">
<Link href={`/nav/on-click?count=${count + 1}`} replace>
<a
id="on-click-link"
onClick={() => this.setState({ stateCounter: stateCounter + 1 })}
>
Self Reload
</a>
</Link>
<Link href="/nav/on-click">
<a
id="on-click-link-prevent-default"
onClick={e => {
e.preventDefault()
this.setState({ stateCounter: stateCounter + 1 })
}}
>
Self Reload
</a>
</Link>
<p id="query-count">QUERY COUNT: {count}</p>
<p id="state-count">STATE COUNT: {stateCounter}</p>
</div>
)
}
}