react / Component

Class: Component<P, S, SS>

Extends

  • ComponentLifecycle<P, S, SS>

Extended by

Type Parameters

Type Parameter Default type
P object
S object
SS any

Constructors

new Component()

new Component<P, S, SS>(props: P): Component<P, S, SS>

Parameters

Parameter Type
props P

Returns

Component<P, S, SS>

Inherited from

ComponentLifecycle<P, S, SS>.constructor

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1009

new Component()

new Component<P, S, SS>(props: P, context: any): Component<P, S, SS>

Parameters

Parameter Type
props P
context any

Returns

Component<P, S, SS>

Deprecated

See

React Docs

Inherited from

ComponentLifecycle<P, S, SS>.constructor

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1014

Properties

context

context: unknown;

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

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1007


props

readonly props: Readonly<P>;

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1027


refs

refs: object;

Index Signature

[key: string]: ReactInstance

Deprecated

See

Legacy React Docs

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1034


state

state: Readonly<S>;

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1028


contextType?

static optional contextType: Context<any>;

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

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:989

Methods

componentDidCatch()?

optional componentDidCatch(error: Error, errorInfo: ErrorInfo): void

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

Parameters

Parameter Type
error Error
errorInfo ErrorInfo

Returns

void

Inherited from

ComponentLifecycle.componentDidCatch

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1391


componentDidMount()?

optional componentDidMount(): void

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

Returns

void

Inherited from

ComponentLifecycle.componentDidMount

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1370


componentDidUpdate()?

optional componentDidUpdate(
   prevProps: Readonly<P>,
   prevState: Readonly<S>,
   snapshot?: SS): void

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

Parameter Type
prevProps Readonly<P>
prevState Readonly<S>
snapshot? SS

Returns

void

Inherited from

ComponentLifecycle.componentDidUpdate

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1433


componentWillMount()?

optional componentWillMount(): void

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

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

Returns

void

Deprecated

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

See

Inherited from

ComponentLifecycle.componentWillMount

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1449


componentWillReceiveProps()?

optional componentWillReceiveProps(nextProps: Readonly<P>, nextContext: any): void

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 NewLifecycle.getSnapshotBeforeUpdate getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Parameters

Parameter Type
nextProps Readonly<P>
nextContext any

Returns

void

Deprecated

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

See

Inherited from

ComponentLifecycle.componentWillReceiveProps

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1480


componentWillUnmount()?

optional componentWillUnmount(): void

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

Returns

void

Inherited from

ComponentLifecycle.componentWillUnmount

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1386


componentWillUpdate()?

optional componentWillUpdate(
   nextProps: Readonly<P>,
   nextState: Readonly<S>,
   nextContext: any): void

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 NewLifecycle.getSnapshotBeforeUpdate getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Parameters

Parameter Type
nextProps Readonly<P>
nextState Readonly<S>
nextContext any

Returns

void

Deprecated

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

See

Inherited from

ComponentLifecycle.componentWillUpdate

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1512


forceUpdate()

forceUpdate(callback?: () => void): void

Parameters

Parameter Type
callback? () => void

Returns

void

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1024


getSnapshotBeforeUpdate()?

optional getSnapshotBeforeUpdate(prevProps: Readonly<P>, prevState: Readonly<S>): null | SS

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

Parameter Type
prevProps Readonly<P>
prevState Readonly<S>

Returns

null | SS

Inherited from

ComponentLifecycle.getSnapshotBeforeUpdate

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1427


render()

render(): ReactNode

Returns

ReactNode

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1025


setState()

setState<K>(state: null | S | (prevState: Readonly<S>, props: Readonly<P>) => null | S | Pick<S, K> | Pick<S, K>, callback?: () => void): void

Type Parameters

Type Parameter
K extends string | number | symbol

Parameters

Parameter Type
state null | S | (prevState: Readonly<S>, props: Readonly<P>) => null | S | Pick<S, K> | Pick<S, K>
callback? () => void

Returns

void

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1019


shouldComponentUpdate()?

optional shouldComponentUpdate(
   nextProps: Readonly<P>,
   nextState: Readonly<S>,
   nextContext: any): boolean

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

Parameter Type
nextProps Readonly<P>
nextState Readonly<S>
nextContext any

Returns

boolean

Inherited from

ComponentLifecycle.shouldComponentUpdate

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1381


UNSAFE_componentWillMount()?

optional UNSAFE_componentWillMount(): void

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 NewLifecycle.getSnapshotBeforeUpdate getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Returns

void

Deprecated

16.3, use ComponentLifecycle.componentDidMount componentDidMount or the constructor instead

See

Inherited from

ComponentLifecycle.UNSAFE_componentWillMount

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1464


UNSAFE_componentWillReceiveProps()?

optional UNSAFE_componentWillReceiveProps(nextProps: Readonly<P>, nextContext: any): void

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 NewLifecycle.getSnapshotBeforeUpdate getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Parameters

Parameter Type
nextProps Readonly<P>
nextContext any

Returns

void

Deprecated

16.3, use static StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps instead

See

Inherited from

ComponentLifecycle.UNSAFE_componentWillReceiveProps

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1498


UNSAFE_componentWillUpdate()?

optional UNSAFE_componentWillUpdate(
   nextProps: Readonly<P>,
   nextState: Readonly<S>,
   nextContext: any): void

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 NewLifecycle.getSnapshotBeforeUpdate getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Parameters

Parameter Type
nextProps Readonly<P>
nextState Readonly<S>
nextContext any

Returns

void

Deprecated

16.3, use getSnapshotBeforeUpdate instead

See

Inherited from

ComponentLifecycle.UNSAFE_componentWillUpdate

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1528

Except as otherwise noted, this work is licensed under a Creative Commons Attribution 4.0 International License, and code samples are licensed under the Apache License 2.0.