Skip to Content

UnstyledButton

Unstyled polymorphic button that resets default button styles. Use it as a base for custom button components.

Import

import { UnstyledButton } from '@tidbcloud/uikit'

Basic Usage

import { UnstyledButton } from '@tidbcloud/uikit' function Demo() { return <UnstyledButton>Button without styles</UnstyledButton> }

Polymorphic Component

UnstyledButton is a polymorphic component - change the root element with component prop:

import { UnstyledButton } from '@tidbcloud/uikit' function Demo() { return ( <> {/* Renders as button (default) */} <UnstyledButton>Click me</UnstyledButton> {/* Renders as anchor */} <UnstyledButton component="a" href="https://example.com"> Link button </UnstyledButton> </> ) }

Custom Button Example

Create a custom styled button based on UnstyledButton:

import { UnstyledButton } from '@tidbcloud/uikit' function CustomButton({ children, ...props }) { return ( <UnstyledButton style={{ padding: '10px 20px', backgroundColor: 'var(--mantine-color-blue-6)', color: 'white', borderRadius: '4px' }} {...props} > {children} </UnstyledButton> ) }

Get Element Ref

import { useRef } from 'react' import { UnstyledButton } from '@tidbcloud/uikit' function Demo() { const ref = useRef<HTMLButtonElement>(null) return <UnstyledButton ref={ref}>Button</UnstyledButton> }

Key Props

PropTypeDescription
componentElementTypeRoot element to render (default: ‘button’)
sizestring | numberSize passed from parent, sets data-size attribute
Last updated on