Pacote
    Preparing search index...

    Function withDefaultProps

    • Creates a component with default props that callers may override.

      Type Parameters

      • C extends ElementType
      • P extends Partial<ComponentPropsWithoutRef<C>>

      Parameters

      • inject: P

        Default prop values.

      • BaseComponent: C

        Component or DOM element type to enhance.

      Returns ComponentType<Defaultize<ComponentPropsWithoutRef<C>, keyof P>>

      A component whose injected props are optional.

      import { withDefaultProps } from '@pacote/react-with-props'

      type ComponentProps = { name: string; value: string }
      const NameValue = (props: ComponentProps) => (
      <div>{props.name}: {props.value}</div>
      )

      const Example = withDefaultProps({ name: 'Example' }, NameValue)
      render(<Example value="with props" />)
      // => <div>Example: with props</div>

      const PasswordInput = withDefaultProps(
      { type: 'password', placeholder: 'Password' },
      'input',
      )
      render(<PasswordInput name="secret" placeholder="API Key" />)
      // => <input type="password" name="secret" placeholder="API Key" />