Meter

A graphical display of a numeric value within a range.

View as Markdown
Storage Used

Anatomy

Import the component and assemble its parts:

Anatomy

API reference

Root

Groups all parts of the meter and provides the value for screen readers. Renders a <div> element.

value*

number

Name
Description

The current value.

Type
number
aria-valuetext

string

Description

A string value that provides a user-friendly name for aria-valuenow, the current value of the meter.

Type
string | undefined
getAriaValueText

function

Description

A function that returns a string value that provides a human-readable text alternative for aria-valuenow, the current value of the meter.

Type
| ((formattedValue: string, value: number) => string)
| undefined
locale

Intl.LocalesArgument

Name
Description

The locale used by Intl.NumberFormat when formatting the value. Defaults to the user's runtime locale.

Type
Intl.LocalesArgument
min

number

(default:

0

)
Name
Description

The minimum value

Type
number | undefined
Default

0

max

number

(default:

100

)
Name
Description

The maximum value

Type
number | undefined
Default

100

format

Intl.NumberFormatOptions

Name
Description

Options to format the value.

Type
Intl.NumberFormatOptions | undefined
className

string | function

Description

CSS class applied to the element, or a function that returns a class based on the component’s state.

Type
string | ((state: Meter.Root.State) => string)
render

ReactElement | function

Name
Description

Allows you to replace the component’s HTML element with a different tag, or compose it with another component.

Accepts a ReactElement or a function that returns the element to render.

Type
| ReactElement
| ((
    props: HTMLProps,
    state: Meter.Root.State,
  ) => ReactElement)

Track

Contains the meter indicator and represents the entire range of the meter. Renders a <div> element.

className

string | function

Description

CSS class applied to the element, or a function that returns a class based on the component’s state.

Type
string | ((state: Meter.Root.State) => string)
render

ReactElement | function

Name
Description

Allows you to replace the component’s HTML element with a different tag, or compose it with another component.

Accepts a ReactElement or a function that returns the element to render.

Type
| ReactElement
| ((
    props: HTMLProps,
    state: Meter.Root.State,
  ) => ReactElement)

Indicator

Visualizes the position of the value along the range. Renders a <div> element.

className

string | function

Description

CSS class applied to the element, or a function that returns a class based on the component’s state.

Type
string | ((state: Meter.Root.State) => string)
render

ReactElement | function

Name
Description

Allows you to replace the component’s HTML element with a different tag, or compose it with another component.

Accepts a ReactElement or a function that returns the element to render.

Type
| ReactElement
| ((
    props: HTMLProps,
    state: Meter.Root.State,
  ) => ReactElement)

Value

A text element displaying the current value. Renders a <span> element.

children

| ((formattedValue: string, value: number) => ReactNode)
| null

Type
| ((formattedValue: string, value: number) => ReactNode)
| null
| undefined
className

string | function

Description

CSS class applied to the element, or a function that returns a class based on the component’s state.

Type
string | ((state: Meter.Root.State) => string)
render

ReactElement | function

Name
Description

Allows you to replace the component’s HTML element with a different tag, or compose it with another component.

Accepts a ReactElement or a function that returns the element to render.

Type
| ReactElement
| ((
    props: HTMLProps,
    state: Meter.Root.State,
  ) => ReactElement)

Label

An accessible label for the meter. Renders a <span> element.

className

string | function

Description

CSS class applied to the element, or a function that returns a class based on the component’s state.

Type
string | ((state: Meter.Root.State) => string)
render

ReactElement | function

Name
Description

Allows you to replace the component’s HTML element with a different tag, or compose it with another component.

Accepts a ReactElement or a function that returns the element to render.

Type
| ReactElement
| ((
    props: HTMLProps,
    state: Meter.Root.State,
  ) => ReactElement)