For AI agents: the complete documentation index is available at /next/llms.txt, the full documentation bundle is available at /next/llms-full.txt, and this page is available as Markdown at /next/api/react/Class.PureComponent.md.
  • English
  • @lynx-js/react / PureComponent

    Class: PureComponent<P, S, SS>

    Extends

    Type Parameters

    Type ParameterDefault type
    Pobject
    Sobject
    SSany

    Constructors

    new PureComponent()

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

    Parameters

    ParameterType
    propsP

    Returns

    PureComponent<P, S, SS>

    Inherited from

    Component.constructor

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1017

    new PureComponent()

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

    Parameters

    ParameterType
    propsP
    contextany

    Returns

    PureComponent<P, S, SS>

    Deprecated

    See

    React Docs

    Inherited from

    Component.constructor

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1022

    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

    Inherited from

    Component.context

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1015


    props

    readonly props: Readonly<P>;

    Inherited from

    Component.props

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1035


    refs

    refs: object;

    Index Signature

    [key: string]: ReactInstance

    Deprecated

    See

    Legacy React Docs

    Inherited from

    Component.refs

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1042


    state

    state: Readonly<S>;

    Inherited from

    Component.state

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1036


    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

    Inherited from

    Component.contextType

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:997

    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

    ParameterType
    errorError
    errorInfoErrorInfo

    Returns

    void

    Inherited from

    Component.componentDidCatch

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1399


    componentDidMount()?

    optional componentDidMount(): void

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

    Returns

    void

    Inherited from

    Component.componentDidMount

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1378


    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

    ParameterType
    prevPropsReadonly<P>
    prevStateReadonly<S>
    snapshot?SS

    Returns

    void

    Inherited from

    Component.componentDidUpdate

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1441


    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

    Component.componentWillMount

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1457


    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

    ParameterType
    nextPropsReadonly<P>
    nextContextany

    Returns

    void

    Deprecated

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

    See

    Inherited from

    Component.componentWillReceiveProps

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1488


    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 DOM elements created in componentDidMount.

    Returns

    void

    Inherited from

    Component.componentWillUnmount

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1394


    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

    ParameterType
    nextPropsReadonly<P>
    nextStateReadonly<S>
    nextContextany

    Returns

    void

    Deprecated

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

    See

    Inherited from

    Component.componentWillUpdate

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1520


    forceUpdate()

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

    Parameters

    ParameterType
    callback?() => void

    Returns

    void

    Inherited from

    Component.forceUpdate

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1032


    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

    ParameterType
    prevPropsReadonly<P>
    prevStateReadonly<S>

    Returns

    null | SS

    Inherited from

    Component.getSnapshotBeforeUpdate

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1435


    render()

    render(): ReactNode

    Returns

    ReactNode

    Inherited from

    Component.render

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1033


    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

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

    Returns

    void

    Inherited from

    Component.setState

    Defined in

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


    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

    ParameterType
    nextPropsReadonly<P>
    nextStateReadonly<S>
    nextContextany

    Returns

    boolean

    Inherited from

    Component.shouldComponentUpdate

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1389


    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

    Component.UNSAFE_componentWillMount

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1472


    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

    ParameterType
    nextPropsReadonly<P>
    nextContextany

    Returns

    void

    Deprecated

    16.3, use static StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps instead

    See

    Inherited from

    Component.UNSAFE_componentWillReceiveProps

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1506


    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

    ParameterType
    nextPropsReadonly<P>
    nextStateReadonly<S>
    nextContextany

    Returns

    void

    Deprecated

    16.3, use getSnapshotBeforeUpdate instead

    See

    Inherited from

    Component.UNSAFE_componentWillUpdate

    Defined in

    .pnpm/@types+react@18.3.28/node_modules/@types/react/ts5.0/index.d.ts:1536

    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.