Forms

ErrorMessage

A low-level error message component for displaying errors

Completeness: styles-sufficient

The stylesheet is the whole component. There is no keyboard map beyond what the native element already does and nothing sets state at runtime that the CSS keys on, so a CSS-only port reproduces it.

Import

import { ErrorMessage } from '@blakeui/react';

Usage

ErrorMessage is a low-level component built on React Aria's Text component with an errorMessage slot. It's designed for displaying error messages in non-form components such as TagGroup, Calendar, and other collection-based components.

Required Categories
News
Travel
Gaming
Shopping
Select at least one categoryPlease select at least one category
"use client";

import type {Key} from "@blakeui/react";

import {Description, ErrorMessage, Label, Tag, TagGroup} from "@blakeui/react";

Anatomy

import { TagGroup, Tag, Label, Description, ErrorMessage } from '@blakeui/react';

<TagGroup>
  <Label />
  <TagGroup.List>
    <Tag />
  </TagGroup.List>
  <Description />
  <ErrorMessage />
</TagGroup>

When to Use

ErrorMessage is not tied to forms. It's a generic error display component for non-form contexts.

  • Recommended for non-form components (e.g., TagGroup, Calendar, collection components)
  • For form fields, we recommend using FieldError instead, which provides form-specific validation features and automatic error handling, following standardized form validation patterns.

ErrorMessage vs FieldError

ComponentUse CaseForm IntegrationExample Components
ErrorMessageNon-form componentsNoTagGroup, Calendar
FieldErrorForm fields (recommended)YesTextField, NumberField, Select

For form validation, we recommend using FieldError as it follows standardized form validation patterns and provides form-specific features. See the FieldError documentation and the Form guide for examples and best practices.

API Reference

ErrorMessage Props

PropTypeDefaultDescription
classNamestring-Additional CSS classes
childrenReactNode-The error message content

Note: ErrorMessage is built on React Aria's Text component with slot="errorMessage". It can be targeted using the [slot=errorMessage] CSS selector.

Accessibility

The ErrorMessage component enhances accessibility by:

  • Using semantic HTML that screen readers can identify
  • Providing the slot="errorMessage" attribute for React Aria integration
  • Supporting proper text contrast ratios for error states
  • Following WAI-ARIA best practices for error messaging

Styling

Passing Tailwind CSS classes

import { ErrorMessage } from '@blakeui/react';

function CustomErrorMessage() {
  return (
    <ErrorMessage className="font-bold text-sm">
      Custom styled error message
    </ErrorMessage>
  );
}

Customizing the component classes

To customize the ErrorMessage component classes, you can use the @layer components directive.
Learn more.

A worked example is in Styling.

blakeUI follows the BEM methodology to ensure component variants and states are reusable and easy to customize.

CSS Classes

The ErrorMessage component uses these CSS classes (View source styles):

Base Classes

  • .error-message - Base error message styles with danger color and text truncation

Slot Classes

  • [slot="errorMessage"] - ErrorMessage slot styles for React Aria integration

On this page