UnstyledButton
Unstyled polymorphic button
Import
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,
UnstyledButtonProps
does not extendReact.ComponentPropsWithoutRef'<'div'>'
althoughbutton
is the default element.If you want to create a wrapper for a polymorphic component that is not polymorphic (does not support
component
prop), then your component props interface should extend HTML element props, for example:If you want your component to remain polymorphic after wrapping, use
createPolymorphicComponent
function described in this guide.