1
0
Fork 0
mirror of https://github.com/terribleplan/next.js.git synced 2024-01-19 02:48:18 +00:00
next.js/packages/next/client/error-boundary.js
Tim Neutkens b1c4f3aec4
Monorepo (#5341)
- Implements Lerna
- Moves all source code into `packages/next`
- Keeps integration tests in the root directory
2018-10-01 01:02:10 +02:00

26 lines
552 B
JavaScript

// @flow
import * as React from 'react'
type ComponentDidCatchInfo = {
componentStack: string
}
type Props = {|
onError: (error: Error, info: ComponentDidCatchInfo) => void,
children: React.ComponentType<*>
|}
class ErrorBoundary extends React.Component<Props> {
componentDidCatch (error: Error, info: ComponentDidCatchInfo) {
const {onError} = this.props
// onError is required
onError(error, info)
}
render () {
const {children} = this.props
return React.Children.only(children)
}
}
export default ErrorBoundary