UnstyledButton
Unstyled polymorphic button
Polymorphic
Source
Docs
Package
Usage
UnstyledButton resets default button styles, it is used as a
base for all other button components. You can use it to as a base for custom
polymorphic buttons.
Polymorphic component
UnstyledButton is a polymorphic component – its default root element is button, but it can be changed to any other element or component with component prop:
Polymorphic components with TypeScript
Note that polymorphic components props types are different from regular components – they do not extend HTML element props of the default element. For example,
UnstyledButtonPropsdoes not extendReact.ComponentPropsWithoutRef'<'div'>'althoughbuttonis the default element.If you want to create a wrapper for a polymorphic component that is not polymorphic (does not support
componentprop), then your component props interface should extend HTML element props, for example:If you want your component to remain polymorphic after wrapping, use
createPolymorphicComponentfunction described in this guide.