mirror of
https://github.com/terribleplan/next.js.git
synced 2024-01-19 02:48:18 +00:00
9f08e48d72
RE: https://github.com/zeit/next.js/issues/4587, this pull request improves the with-segment example. Previously, only SSR page loads were tracked. This pull request adds manual page view logging via `Router.events.on('routeChangeComplete')` in `Page.js`. There is also a minor bug fix on the textarea to remove a console error.
50 lines
1 KiB
JavaScript
50 lines
1 KiB
JavaScript
import React, { Component } from 'react'
|
|
|
|
export default class extends Component {
|
|
state = { message: '' }
|
|
|
|
render () {
|
|
return (
|
|
<div>
|
|
<h1>This is the Contact page</h1>
|
|
<form onSubmit={this.handleSubmit}>
|
|
<label>
|
|
<span>Message:</span>
|
|
<textarea onChange={this.handleInput} value={this.state.message} />
|
|
</label>
|
|
<button type='submit'>submit</button>
|
|
</form>
|
|
|
|
<style jsx>{`
|
|
label span {
|
|
display: block;
|
|
margin-bottom: 12px;
|
|
}
|
|
|
|
textarea {
|
|
min-width: 300px;
|
|
min-height: 120px;
|
|
}
|
|
|
|
button {
|
|
margin-top: 12px;
|
|
display: block;
|
|
}
|
|
`}</style>
|
|
</div>
|
|
)
|
|
}
|
|
|
|
handleInput = e => {
|
|
this.setState({ message: e.target.value })
|
|
}
|
|
|
|
handleSubmit = e => {
|
|
e.preventDefault()
|
|
global.analytics.track('Form Submitted', {
|
|
message: this.state.message
|
|
})
|
|
this.setState({ message: '' })
|
|
}
|
|
}
|