Skip to main content

Class: ErrorBoundary

Defined in: packages/react-page-renderer/src/component/ErrorBoundary.ts:15

Error boundary wrapper which connects the IMA application to the dev HMR api and handles error reporting.

Extends

  • PureComponent<ErrorBoundaryProps, ErrorBoundaryState>

Constructors

new ErrorBoundary()

new ErrorBoundary(props): ErrorBoundary

Defined in: packages/react-page-renderer/src/component/ErrorBoundary.ts:19

Parameters

props

ErrorBoundaryProps

Returns

ErrorBoundary

Overrides

PureComponent< ErrorBoundaryProps, ErrorBoundaryState >.constructor

Properties

context

context: unknown

Defined in: node_modules/@types/react/index.d.ts:1013

If using the new style context, re-declare this in your class to be the React.ContextType of your static contextType. Should be used with type annotation or static contextType.

Example

static contextType = MyContext
// For TS pre-3.7:
context!: React.ContextType<typeof MyContext>
// For TS 3.7 and above:
declare context: React.ContextType<typeof MyContext>

See

React Docs

Inherited from

PureComponent.context


props

readonly props: Readonly<ErrorBoundaryProps>

Defined in: node_modules/@types/react/index.d.ts:1033

Inherited from

PureComponent.props


refs

refs: object

Defined in: node_modules/@types/react/index.d.ts:1040

Index Signature

[key: string]: ReactInstance

Deprecated

See

Legacy React Docs

Inherited from

PureComponent.refs


state

state: Readonly<ErrorBoundaryState>

Defined in: node_modules/@types/react/index.d.ts:1034

Inherited from

PureComponent.state


contextType?

static optional contextType: Context<any>

Defined in: node_modules/@types/react/index.d.ts:995

If set, this.context will be set at runtime to the current value of the given Context.

Example

type MyContext = number
const Ctx = React.createContext<MyContext>(0)

class Foo extends React.Component {
static contextType = Ctx
context!: React.ContextType<typeof Ctx>
render () {
return <>My context's value: {this.context}</>;
}
}

See

https://react.dev/reference/react/Component#static-contexttype

Inherited from

PureComponent.contextType

Methods

componentDidCatch()

componentDidCatch(error): void

Defined in: packages/react-page-renderer/src/component/ErrorBoundary.ts:38

Catches exceptions generated in descendant components. Unhandled exceptions will cause the entire component tree to unmount.

Parameters

error

Error

Returns

void

Overrides

PureComponent.componentDidCatch


componentDidMount()

componentDidMount(): void

Defined in: packages/react-page-renderer/src/component/ErrorBoundary.ts:31

Called immediately after a component is mounted. Setting state here will trigger re-rendering.

Returns

void

Overrides

PureComponent.componentDidMount


componentDidUpdate()?

optional componentDidUpdate(prevProps, prevState, snapshot?): void

Defined in: node_modules/@types/react/index.d.ts:1439

Called immediately after updating occurs. Not called for the initial render.

The snapshot is only present if getSnapshotBeforeUpdate is present and returns non-null.

Parameters

prevProps

Readonly<ErrorBoundaryProps>

prevState

Readonly<ErrorBoundaryState>

snapshot?

any

Returns

void

Inherited from

PureComponent.componentDidUpdate


componentWillMount()?

optional componentWillMount(): void

Defined in: node_modules/@types/react/index.d.ts:1455

Called immediately before mounting occurs, and before Component.render. Avoid introducing any side-effects or subscriptions in this method.

Note: the presence of getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Returns

void

Deprecated

16.3, use componentDidMount or the constructor instead; will stop working in React 17

See

Inherited from

PureComponent.componentWillMount


componentWillReceiveProps()?

optional componentWillReceiveProps(nextProps, nextContext): void

Defined in: node_modules/@types/react/index.d.ts:1486

Called when the component may be receiving new props. React may call this even if props have not changed, so be sure to compare new and existing props if you only want to handle changes.

Calling Component.setState generally does not trigger this method.

Note: the presence of getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Parameters

nextProps

Readonly<ErrorBoundaryProps>

nextContext

any

Returns

void

Deprecated

16.3, use static StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps instead; will stop working in React 17

See

Inherited from

PureComponent.componentWillReceiveProps


componentWillUnmount()?

optional componentWillUnmount(): void

Defined in: node_modules/@types/react/index.d.ts:1392

Called immediately before a component is destroyed. Perform any necessary cleanup in this method, such as cancelled network requests, or cleaning up any DOM elements created in componentDidMount.

Returns

void

Inherited from

PureComponent.componentWillUnmount


componentWillUpdate()?

optional componentWillUpdate(nextProps, nextState, nextContext): void

Defined in: node_modules/@types/react/index.d.ts:1518

Called immediately before rendering when new props or state is received. Not called for the initial render.

Note: You cannot call Component.setState here.

Note: the presence of getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Parameters

nextProps

Readonly<ErrorBoundaryProps>

nextState

Readonly<ErrorBoundaryState>

nextContext

any

Returns

void

Deprecated

16.3, use getSnapshotBeforeUpdate instead; will stop working in React 17

See

Inherited from

PureComponent.componentWillUpdate


forceUpdate()

forceUpdate(callback?): void

Defined in: node_modules/@types/react/index.d.ts:1030

Parameters

callback?

() => void

Returns

void

Inherited from

PureComponent.forceUpdate


getSnapshotBeforeUpdate()?

optional getSnapshotBeforeUpdate(prevProps, prevState): any

Defined in: node_modules/@types/react/index.d.ts:1433

Runs before React applies the result of render to the document, and returns an object to be given to componentDidUpdate. Useful for saving things such as scroll position before render causes changes to it.

Note: the presence of this method prevents any of the deprecated lifecycle events from running.

Parameters

prevProps

Readonly<ErrorBoundaryProps>

prevState

Readonly<ErrorBoundaryState>

Returns

any

Inherited from

PureComponent.getSnapshotBeforeUpdate


render()

render(): undefined | null | ReactElement

Defined in: packages/react-page-renderer/src/component/ErrorBoundary.ts:45

Returns

undefined | null | ReactElement

Overrides

PureComponent.render


setState()

setState<K>(state, callback?): void

Defined in: node_modules/@types/react/index.d.ts:1025

Type Parameters

K extends "hasError"

Parameters

state

null | ErrorBoundaryState | (prevState, props) => null | ErrorBoundaryState | Pick<ErrorBoundaryState, K> | Pick<ErrorBoundaryState, K>

callback?

() => void

Returns

void

Inherited from

PureComponent.setState


shouldComponentUpdate()?

optional shouldComponentUpdate(nextProps, nextState, nextContext): boolean

Defined in: node_modules/@types/react/index.d.ts:1387

Called to determine whether the change in props and state should trigger a re-render.

Component always returns true. PureComponent implements a shallow comparison on props and state and returns true if any props or states have changed.

If false is returned, Component.render, componentWillUpdate and componentDidUpdate will not be called.

Parameters

nextProps

Readonly<ErrorBoundaryProps>

nextState

Readonly<ErrorBoundaryState>

nextContext

any

Returns

boolean

Inherited from

PureComponent.shouldComponentUpdate


UNSAFE_componentWillMount()?

optional UNSAFE_componentWillMount(): void

Defined in: node_modules/@types/react/index.d.ts:1470

Called immediately before mounting occurs, and before Component.render. Avoid introducing any side-effects or subscriptions in this method.

This method will not stop working in React 17.

Note: the presence of getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Returns

void

Deprecated

16.3, use componentDidMount or the constructor instead

See

Inherited from

PureComponent.UNSAFE_componentWillMount


UNSAFE_componentWillReceiveProps()?

optional UNSAFE_componentWillReceiveProps(nextProps, nextContext): void

Defined in: node_modules/@types/react/index.d.ts:1504

Called when the component may be receiving new props. React may call this even if props have not changed, so be sure to compare new and existing props if you only want to handle changes.

Calling Component.setState generally does not trigger this method.

This method will not stop working in React 17.

Note: the presence of getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Parameters

nextProps

Readonly<ErrorBoundaryProps>

nextContext

any

Returns

void

Deprecated

16.3, use static StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps instead

See

Inherited from

PureComponent.UNSAFE_componentWillReceiveProps


UNSAFE_componentWillUpdate()?

optional UNSAFE_componentWillUpdate(nextProps, nextState, nextContext): void

Defined in: node_modules/@types/react/index.d.ts:1534

Called immediately before rendering when new props or state is received. Not called for the initial render.

Note: You cannot call Component.setState here.

This method will not stop working in React 17.

Note: the presence of getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Parameters

nextProps

Readonly<ErrorBoundaryProps>

nextState

Readonly<ErrorBoundaryState>

nextContext

any

Returns

void

Deprecated

16.3, use getSnapshotBeforeUpdate instead

See

Inherited from

PureComponent.UNSAFE_componentWillUpdate


getDerivedStateFromError()

static getDerivedStateFromError(): object

Defined in: packages/react-page-renderer/src/component/ErrorBoundary.ts:27

Returns

object

hasError

hasError: boolean = true